header and filter
のカスタムgridview
を各列のヘッダーに作成したいとします。私は正常に以下のようにWPFでGridViewColumnHeaderテンプレートを作成しました:GridViewColumnHeaderテンプレートのテキストボックスへのアクセス方法
<Style TargetType="{x:Type GridViewColumnHeader}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type GridViewColumnHeader}">
<Border BorderThickness="0,0,0,1" BorderBrush="Black" Background="Transparent">
<StackPanel Orientation="Vertical" Margin="1">
<TextBlock Padding="5,5,5,0" Text="{TemplateBinding Content}" Width="{TemplateBinding Width}" TextAlignment="Center" />
<TextBox x:Name="HeaderSearch" Padding="5,5,5,0" Width="{TemplateBinding Width}" TextAlignment="Center" />
</StackPanel>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
<Setter Property="OverridesDefaultStyle" Value="True" />
<Setter Property="Foreground" Value="Black" />
</Style>
<ScrollViewer Grid.Column="1">
<ListView>
<ListView.View>
<GridView >
<GridViewColumn Header="Code" Width="100"/>
<GridViewColumn Header="Name" Width="100"/>
<GridViewColumn Header="Description" Width="100"/>
</GridView>
</ListView.View>
</ListView>
</ScrollViewer>
どのようにしてコードボックス内のテキストボックスにアクセスできますか?
ありがとうございます。
@StefanKert
GotFocus
またはLoaded
イベントハンドラを追加しますが、可能ではないthatsの。 –@Mostafa Khodakaramiこれを参照してくださいhttp://stackoverflow.com/questions/8126700/how-do-i-access-an-element-of-a-control-template-from-within-code-behind –