获取GridViewColumn头从一个文本框开始
本文关键字:一个 文本 开始 GridViewColumn 获取 | 更新日期: 2023-09-27 18:17:02
<GridViewColumn Header="#ErrorRepeat1" Width="100">
<GridViewColumn.CellTemplate>
<DataTemplate>
<TextBox Text="{Binding NoErrorRepeat1}"
TextAlignment="Center"
IsReadOnly="True"
Background="{Binding IsPresentGroup1, Converter={StaticResource BoolToColorConverter}}" >
<TextBox.ContextMenu>
<ContextMenu>
<MenuItem Header="Highlight Activity" Click="menuActivityFocus"/>
</ContextMenu>
</TextBox.ContextMenu>
</TextBox>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
我正在尝试从文本框开始使用:
MenuItem mi = sender as MenuItem;
var menu = mi.Parent as ContextMenu;
if (menu != null)
{
TextBox tb = menu.PlacementTarget as TextBox;
var gv = FindVisualParent<GridViewColumn>(tb);
}
但是没有成功。
我需要一些关于如何访问GridViewColumn获取标题内容的提示。
您可以将值绑定到Header
属性,然后从后面的代码访问数据绑定属性。试试这样做:
<GridViewColumn Header="{Binding ColumnHeader}" Width="100">
...
</GridViewColumn>
…
MenuItem mi = sender as MenuItem;
var menu = mi.Parent as ContextMenu;
if (menu != null)
{
string columnHeader = ColumnHeader;
...
}