silverlight – SL4. ElementName绑定在DataTemplate中不起作用

silverlight – SL4. ElementName绑定在DataTemplate中不起作用,第1张

概述DataTemplate还有另一个令人头痛的问题. 描述: 使用Silverlight 4,Mvvm等(适用于Silverlight LOB应用程序的标准开发人员工具集). 实体列表成功绑定到DataGrid.一个属性(可空的bool BoolValue)负责实体行为,并在datagrid中显示图片,单击这将导致更改LayoutRoot元素中某些控件的可见性. 问题: 问题是,遗憾的是,或者幸运的 DataTemplate还有另一个令人头痛的问题.

描述:
使用Silverlight 4,Mvvm等(适用于Silverlight LOB应用程序的标准开发人员工具集).

实体列表成功绑定到DataGrID.一个属性(可空的bool BoolValue)负责实体行为,并在datagrID中显示图片,单击这将导致更改LayoutRoot元素中某些控件的可见性.

问题:
问题是,遗憾的是,或者幸运的是,DataTemplate中的Elementname绑定没有看到放置在此模板中的其他元素.

代码示例:

<navigation:DataGrIDTemplateColumn WIDth="40"                              CanUserReorder="True"                              CanUserSort="False">     <navigation:DataGrIDTemplateColumn.CellTemplate>          <DataTemplate>             <border Background="GhostWhite">             <GrID>              <Image x:name="ImageWithTrigger"                     GrID.Column="1"                     margin="10,4,0"                     HorizontalAlignment="left"                     VerticalAlignment="Center"                     Cursor="Hand"                     Source="images/someImage.png"                     Stretch="None"                     Visibility={Binding BoolValue,Converter={StaticResource boolToVisibilityConverter} }>               <i.Interaction.Triggers>                 <i:EventTrigger Eventname="MouseleftbuttonDown">                     <AttachedBehaviors:TrickyBehavior FrameworkElementToHIDe="{Binding Elementname=FirstControlOutsIDe}"                                                        FrameworkElementToShow="{Binding Elementname=SecoundControlOutsIDe}"/>                 </i:EventTrigger>              </i:Interaction.Triggers>            </GrID>            </border>          </DataTemplate>     </navigation:DataGrIDTemplateColumn.CellTemplate></navigation:DataGrIDTemplateColumn>

在上面的示例中,FrameworkElementToHIDe和FrameworkElementToShow始终为null.

互联网上有很多非常类似的问题和解决方案,但我没有找到解决这个问题的任何简单而优雅的方法.

解决方法 请看看这个 post的答案.

Elementname绑定在DataGrID中不起作用.您需要一个代理来解决这个问题.但是,Elementname绑定适用于普通的DataTemplates,例如ListBox等的ItemTemplate

总结

以上是内存溢出为你收集整理的silverlight – SL4. ElementName绑定在DataTemplate中不起作用全部内容,希望文章能够帮你解决silverlight – SL4. ElementName绑定在DataTemplate中不起作用所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/web/1004776.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-22
下一篇 2022-05-22

发表评论

登录后才能评论

评论列表(0条)

保存