[英]Get the GridViewColumn Header starting from a TextBox
<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>
我正在嘗試使用以下方法從TextBox開始獲取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;
...
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.