我有一个我生成的邮件列表,并在dataGrid中显示一些细节。
有些会奏效,有些会出错。
我想在最后一个datagrid列中显示一个按钮,如果该过程成功,或者是一个图像,如果该过程失败。
所以,我用juste按钮得到了这个:
<sdk:DataGridTemplateColumn Header="Voir">
<sdk:DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Button Name="btOpen"
Click="btOpen_Click"
IsEnabled="True"/>
</DataTemplate>
</sdk:DataGridTemplateColumn.CellTemplate>
</sdk:DataGridTemplateColumn>
此按钮将打开文档。
但正如我所说,某些过程可能会失败,因此我必须显示图像而不是按钮。
我可以将图像添加到我的datagridTemplateColumn中,然后根据流程的成功或失败(很容易知道)来显示其中一个图像吗?
如果我不能,我怎么能在这里做我想做的事?我可以在不添加到不同列的情况下执行此操作吗?
谢谢。
答案 0 :(得分:0)
您可以将图像与Button一起添加,并将每个图像的可见性绑定到流程的成功/失败
答案 1 :(得分:0)
尝试在xaml上创建两个不同的模板。一个带图像,一个带按钮。然后在运行时,您可以根据需要进行更改。
<Grid.Resources>
<DataTemplate x:key="ImageDT">
<Image>
</DataTemplate>
<DataTemplate x:key="ButtonTemplate">
<Button>
</DataTemplate>
</Grid.Resources>
然后在运行时,可能在Load / LoadingRow事件
上//Here you get the row or column or cell you need
if(ProcessSuccess)
Grid.Columns["Voir"].CellTemplate = Grid.Resources["ImageDT"] ;
else
Grid.Columns["Voir"].CellTemplate = Grid.Resources["ButtonTemplate"];
请注意,我没有给你正确的代码,只有你的想法。
希望有所帮助