مثال قالب تحكم مربع التحرير والسرد البند

عناصر تحكم في Windows Presentation Foundation (WPF) بها ControlTemplate التي تحتوي على الشجرة المرئية الخاصة بهذا العنصر. يمكنك تغيير مظهر وبنية عنصر التحكم عن طريق تعديل ControlTemplate الخاصة بهذا العنصر. لا توجد طريقة لاستبدال جزء واحد من الشجرة المرئية لعنصر التحكم ; لتغيير الشجرة المرئية الخاصة بهذا العنصر عليك تعيين خاصية Template الخاصة بعنصر التحكم إلي ControlTemplate جديد وكامل.

يوضح هذا الموضوع ControlTemplate الخاص بعنصر تحكم WPF ComboBoxItem.

يشتمل هذا الموضوع على الأقسام التالية.

  • المتطلبات الأساسية
  • مثال قالب تحكم مربع التحرير والسرد البند
  • موضوعات ذات صلة

المتطلبات الأساسية

لتشغيل الأمثلة في هذا الموضوع يجب فهم كيفية كتابة تطبيقات WPF. لمزيد من المعلومات، راجع الشروع في استخدام WPF. يجب أيضاً فهم كيفية استخدام أنماط في WPF. لمزيد من المعلومات، راجع التنسيق و القولبة.

مثال قالب تحكم مربع التحرير والسرد البند

على الرغم من أن هذا المثال يحتوي على كافة العناصر التي تم تعريفها في ControlTemplate التابع إلي ComboBoxItem افتراضياً، القيم المحددة يجب أن يتم اعتبارها كأمثلة.

<Style x:Key="{x:Type ComboBoxItem}" TargetType="ComboBoxItem">
  <Setter Property="SnapsToDevicePixels" Value="true"/>
  <Setter Property="OverridesDefaultStyle" Value="true"/>
  <Setter Property="Template">
    <Setter.Value>
      <ControlTemplate TargetType="ComboBoxItem">
        <Border 
          Name="Border"
          Padding="2"
          SnapsToDevicePixels="true">
          <ContentPresenter />
        </Border>
        <ControlTemplate.Triggers>
          <Trigger Property="IsHighlighted" Value="true">
            <Setter TargetName="Border" Property="Background" Value="{StaticResource SelectedBackgroundBrush}"/>
          </Trigger>
          <Trigger Property="IsEnabled" Value="false">
            <Setter Property="Foreground" Value="{StaticResource DisabledForegroundBrush}"/>
          </Trigger>
        </ControlTemplate.Triggers>
      </ControlTemplate>
    </Setter.Value>
  </Setter>
</Style>

يستخدم المثال السابق الموارد التالية.

<SolidColorBrush x:Key="SelectedBackgroundBrush" Color="#DDD" />


...


<SolidColorBrush x:Key="DisabledForegroundBrush" Color="#888" />

للحصول على نموذج كامل راجع نموذج التصميم باستخدام ControlTemplates.

راجع أيضًا:

المبادئ

مثال ControlTemplate ComboBox

إرشادات حول تصميم عناصر تحكم قابلة لأخذ نمط

موارد أخرى

أمثلة ControlTemplate