Use a ContentTemplate and determine whether the control contains content. : ControlTemplate « Windows Presentation Foundation « C# / CSharp Tutorial

Home
C# / CSharp Tutorial
1.Language Basics
2.Data Type
3.Operator
4.Statement
5.String
6.struct
7.Class
8.Operator Overload
9.delegate
10.Attribute
11.Data Structure
12.Assembly
13.Date Time
14.Development
15.File Directory Stream
16.Preprocessing Directives
17.Regular Expression
18.Generic
19.Reflection
20.Thread
21.I18N Internationalization
22.LINQ
23.GUI Windows Forms
24.Windows Presentation Foundation
25.Windows Communication Foundation
26.Workflow
27.2D
28.Design Patterns
29.Windows
30.XML
31.XML LINQ
32.ADO.Net
33.Network
34.Directory Services
35.Security
36.unsafe
C# / C Sharp
C# / C Sharp by API
C# / CSharp Open Source
C# / CSharp Tutorial » Windows Presentation Foundation » ControlTemplate 
24.76.15.Use a ContentTemplate and determine whether the control contains content.
<Canvas xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:c="CodeMapNS"
    x:Class="ContentControlSimple.Page1">
    <StackPanel>
        <StackPanel.Resources>
            <Style x:Key="ContentCtrl" TargetType="{x:Type ContentControl}">
                <Setter Property="Background" Value="Black"/>
                <Setter Property="Foreground" Value="Red"/>
                <Setter Property="FontSize" Value="40"/>
                <Setter Property="Template">
                    <Setter.Value>
                        <ControlTemplate TargetType="{x:Type ContentControl}">
                            <Grid>
                                <Ellipse Width="{TemplateBinding Width}" Height="{TemplateBinding Width}" Fill="{TemplateBinding Background}"/>
                                <ContentPresenter VerticalAlignment="Center"
                                    HorizontalAlignment="Center"/>
                            </Grid>
                        </ControlTemplate>
                    </Setter.Value>
                </Setter>
            </Style>
            <DataTemplate x:Key="template1">
                <TextBlock Text="{Binding}" FontSize="12" FontWeight="Bold" TextWrapping="Wrap"></TextBlock>
            </DataTemplate>
        </StackPanel.Resources>
        <Label Margin="10, 10, 3, 3" Grid.Column="0" Grid.Row="2">
            <ContentControl Width="75" Style="{StaticResource ContentCtrl}" Content="Hello"/>
        </Label>
        <Label Margin="10, 10, 3, 3" Grid.Column="0" Grid.Row="3"
           Background="Blue">
            <ContentControl Name="contCtrl" ContentTemplate="{StaticResource template1}" 
          Content="This is the content of the content control."/>
        </Label>
        <Button Name="btn2" Margin="10, 10, 3, 3" Grid.Column="0" Grid.Row="4" Background="LightBlue" Click="OnClick">
            <TextBlock TextWrapping="Wrap">Click </TextBlock>
        </Button>

    </StackPanel>
</Canvas>
//File:Window.xaml.cs
using System;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Navigation;
using System.Windows.Shapes;
using System.Windows.Data;
using System.Windows.Media;
using System.Collections.ObjectModel;

namespace ContentControlSimple
{
    public partial class Page1 : Canvas
    {
        void OnClick(object sender, RoutedEventArgs e)
        {
            if (contCtrl.HasContent == true)
            {
                MessageBox.Show("contCtrl has content");
            }
        }
    }
}
WPF Use A Content Template And Determine Whether The Control Contains Content
24.76.ControlTemplate
24.76.1.Control template: event trigger, border and textControl template: event trigger, border and text
24.76.2.Put a Control Template into a StylePut a Control Template into a Style
24.76.3.Label with ControlTemplateLabel with ControlTemplate
24.76.4.Specify Named Parts of a Control TemplateSpecify Named Parts of a Control Template
24.76.5.ProgressBar with ControlTemplateProgressBar with ControlTemplate
24.76.6.Simple ControlTemplateSimple ControlTemplate
24.76.7.ControlTemplate with TriggersControlTemplate with Triggers
24.76.8.ControlTemplate that Respects ContentControlTemplate that Respects Content
24.76.9.ControlTemplate that Respects More PropertiesControlTemplate that Respects More Properties
24.76.10.Use ControlTemplate and event handlerUse ControlTemplate and event handler
24.76.11.Finding the border that is generated by the ControlTemplate of the ButtonFinding the border that is generated by the ControlTemplate of the Button
24.76.12.Get The actual width of the border in the ControlTemplateGet The actual width of the border in the ControlTemplate
24.76.13.ControlTemplates and style xaml fileControlTemplates and style xaml file
24.76.14.Enhance the visual appearance of a ContentControl by applying a style.Enhance the visual appearance of a ContentControl by applying a style.
24.76.15.Use a ContentTemplate and determine whether the control contains content.Use a ContentTemplate and determine whether the control contains content.
www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.