gpt4 book ai didi

wpf数据网格错误?当在具有图像作为标题内容的列上切换可见性时

转载 作者:行者123 更新时间:2023-12-04 19:10:58 24 4
gpt4 key购买 nike

我有以下问题。

如果我将图像用于数据网格标题,则在切换可见性时会出错。

<DataGridTextColumn Header="{StaticResource Image_Link}" IsReadOnly="True">

错误:Bei dem angegebenen Element handelt es sich bereits um das logische untergeordnete Element eines anderen Elements。

到目前为止,我发现的唯一解决方法是为我的 imageheadercolumns 的每个特定图像创建一个 ControlTemplate。

这个数据网格行为是一个错误吗?

编辑:谷歌翻译的错误:指定的元素已经是另一个元素的逻辑子元素。

编辑:样本
<Window x:Class="WpfApplication1.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525">
<Window.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Dictionary1.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Window.Resources>
<Grid>
<Button Content="Toggle" Click="Button_Click" Height="20" Width="40" HorizontalAlignment="Left"/>
<DataGrid Width="200">
<DataGrid.Columns>
<DataGridTextColumn x:Name="colImage" Header="{StaticResource AnyImage}">

</DataGridTextColumn>
</DataGrid.Columns>
</DataGrid>
</Grid>
</Window>

资源字典:
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">

<Image x:Key="AnyImage" Source="Home.png" x:Shared="false"/>
</ResourceDictionary>

按钮。单击:
    private void Button_Click(object sender, RoutedEventArgs e)
{
this.colImage.Visibility = this.colImage.Visibility == Visibility.Visible
? Visibility.Collapsed
: Visibility.Visible;
}

最佳答案

**编辑:删除了之前不相关的答案 **

您需要将图像放在列的 headertemplate 中。
工作示例代码

<Window x:Class="WpfApplication1.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:WpfApplication1"
Title="MainWindow" Height="350" Width="525">
<Window.Resources>
<BitmapImage x:Key="Image_Link" UriSource="test.bmp" />
</Window.Resources>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="30"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<Button Content="Button" Name="button1" Width="75" Click="button1_Click" />
<Grid Grid.Row="1">
<DataGrid Height="200" VerticalAlignment="Top">
<DataGrid.Columns>
<DataGridTextColumn x:Name="firstHeader" IsReadOnly="True">
<DataGridTextColumn.HeaderTemplate>
<DataTemplate>
<Image Source="{StaticResource Image_Link}" />
</DataTemplate>
</DataGridTextColumn.HeaderTemplate>
</DataGridTextColumn>
</DataGrid.Columns>
</DataGrid>
</Grid>
</Grid>
</Window>
private void button1_Click(object sender, RoutedEventArgs e)
{
firstHeader.Visibility = firstHeader.Visibility == Visibility.Visible ? Visibility.Collapsed : Visibility.Visible;
}

关于wpf数据网格错误?当在具有图像作为标题内容的列上切换可见性时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5578109/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com