Zoeken…


Besturingssjablonen

De standaard gebruikersinterfaces voor WPF-besturingselementen zijn meestal opgebouwd uit andere besturingselementen en vormen. Een knop bestaat bijvoorbeeld uit zowel de knoppen ButtonChrome als ContentPresenter. ButtonChrome biedt de standaardknopweergave, terwijl ContentPresenter de inhoud van de knop weergeeft, zoals opgegeven door de eigenschap Content. Soms kan de standaardweergave van een besturingselement niet overeenkomen met de algehele weergave van een toepassing. In dit geval kunt u een ControlTemplate gebruiken om het uiterlijk van de gebruikersinterface van het besturingselement te wijzigen zonder de inhoud en het gedrag te wijzigen.

XAML

   <Window 
      xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
      x:Class="SDKSample.ControlTemplateButtonWindow"
      Title="Button with Control Template" Height="158" Width="290">
    
      <!-- Button using an ellipse -->
      <Button Content="Click Me!" Click="button_Click">
        <Button.Template>
          <ControlTemplate TargetType="{x:Type Button}">
            <Grid Margin="5">
              <Ellipse Stroke="DarkBlue" StrokeThickness="2">
                <Ellipse.Fill>
                  <RadialGradientBrush Center="0.3,0.2" RadiusX="0.5" RadiusY="0.5">
                    <GradientStop Color="Azure" Offset="0.1" />
                    <GradientStop Color="CornflowerBlue" Offset="1.1" />
                  </RadialGradientBrush>
                </Ellipse.Fill>
              </Ellipse>
              <ContentPresenter Name="content" HorizontalAlignment="Center" 
                VerticalAlignment="Center"/>
            </Grid>
          </ControlTemplate>
        </Button.Template>
    
      </Button>
    
    </Window>

C # Code

 using System.Windows;
    
    namespace SDKSample
    {
        public partial class ControlTemplateButtonWindow : Window
        {
            public ControlTemplateButtonWindow()
            {
                InitializeComponent();
            }
    
            void button_Click(object sender, RoutedEventArgs e)
            {
                MessageBox.Show("Hello, Windows Presentation Foundation!");
            }
        }
    }


Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow