1
我想在Silverlight創建一個FilterControl: [字幕] [文本框] [清除鍵]FilterControl - 用戶自定義控件?
我想創建爲styleabel控制,具有清除按鈕的功能(我不想將其留給其他開發人員)以及屬性(Caption,FilterText)。
但據我所知,第一個是自定義控件,第二個和第三個是用戶控件功能。
是否可以創建類似的東西?
這裏是CC的代碼:
<!-- Built-In Style for FilterControl -->
<Style TargetType="Controls:FilterControl">
<Setter Property="Template">
<Setter.Value>
<!-- ControlTemplate -->
<ControlTemplate TargetType="Controls:FilterControl">
<!-- Template's Root Visual -->
<Grid x:Name="LayoutRoot">
<Grid.RowDefinitions>
<RowDefinition Height="{TemplateBinding Height}"/>
</Grid.RowDefinitions>
<StackPanel Orientation="Horizontal" HorizontalAlignment="Center">
<!--FilterCaption PART-->
<TextBlock x:Name="FilterCaptionTextBlock" Text="{TemplateBinding FilterCaption}" VerticalAlignment="Center" />
<!--FilterTextBox PART-->
<TextBox x:Name="FilterTextBox"
HorizontalAlignment="Center" Text="{Binding FilterText, Mode=TwoWay}" IsEnabled="{Binding IsEnabled}" VerticalAlignment="Center" />
<!--<TextBox x:Name="FilterTextBox"
HorizontalAlignment="Center" Text="{TemplateBinding FilterText}" IsEnabled="{Binding IsEnabled}" VerticalAlignment="Center" />-->
<!--ClearFilterTextButton PART-->
<Button x:Name="ClearFilterTextButton"
Content="X" IsEnabled="{TemplateBinding IsEnabled}" VerticalAlignment="Center" />
</StackPanel>
<!--VisualStateManager-->
<VisualStateManager.VisualStateGroups>
...
</VisualStateManager.VisualStateGroups>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
多數民衆贊成清楚,我必須創建一個自定義控件。但是:1.什麼是清除按鈕?由於UC中沒有xaml,所以我無法到達按鈕,也無法添加事件處理程序。 2.雙向約束不適用於這些屬性 – Aaaaaaaa