当前位置: 首页 > news >正文

秦皇岛网络公司 网站托管创建网站 优帮云

秦皇岛网络公司 网站托管,创建网站 优帮云,做网络推广怎么收费,做动画视频的网站引言 xaml代码中属性的绑定主要是通过元素名或类型进行查找绑定和解析的#xff0c;但是当在后台生成控件或面对popup、menuitem时#xff0c;发现他们都查找不到这时为什么呢#xff1f; 局限性 1、无法绑定后台生成控件 xaml中声明的元素会自动被添加进可视化树中但是当在后台生成控件或面对popup、menuitem时发现他们都查找不到这时为什么呢 局限性 1、无法绑定后台生成控件 xaml中声明的元素会自动被添加进可视化树中但后台通过代码添加的控件无法被xaml代码绑定如下 //后台 TextBox tb new TextBox(tb);//xaml TextBlock Text{Binding ElementNametb,PathText}/ 这样是绑定不成功的我们需要注册 tb 这个名称可以临时解决这个问题但RelativeSource绑定时仍然找不到。 //后台 TextBox tb new TextBox(tb); this.RegisterName(tb.Name,tb);//xaml TextBlock Text{Binding ElementNametb,PathText}/ 对于RelativeSource可以通过x:Reference 解决 TextBlock Text{Binding Source{x:Reference Nametb,PathText}/ 但仍然有问题如果我们用x:Reference 将 控件的Tag绑定到自身 会出现循环依赖错误。因为Tag依赖 Button而Button此时还没有构建完成。 Button Name tb Content Click meButton.TagItemsControlTextBlock Text {Binding Source{x:Reference Nametb},PathContent}//ItemsControl/Button.Tag /Button 2、控件Tag、DataGridTextColumn元素无法绑定 因为Tag不存在于可视化树中所以也无法绑定。用x:Reference 可以解决绑定非自身属性但通常我们都要绑定父类的DataContext. 3、ContextMenu、Tooltip 都在Popup可视化树上也无法绑定父类控件属性。但他们有个PlacementTarget代表父类对象 后台可以通过 ContextMenuService.GetPlacementTarget(dp) 获取dp的父控件前端则没有办法。 注意他们是可以继承DataContext可以绑定ViewModel的属性。 万能解决方案 BindingProxy 很简单的一个类主要是继承了 Freezable。 public class BindingProxy : Freezable {protected override Freezable CreateInstanceCore() new BindingProxy();public object Data{get { return (object)GetValue(DataProperty); }set { SetValue(DataProperty, value); }}public static readonly DependencyProperty DataProperty DependencyProperty.Register(Data, typeof(object), typeof(BindingProxy), new UIPropertyMetadata(null)); } 可以添加到资源里面使用 Window.Resourceslocal:BindingProxy k:KeymyButton Data{Binding ElementNametb}/ /Window.Resource Button Name tb Content Click meButton.TagItemsControlTextBlock Text {Binding Source{StaticResource myButton},PathData.Content}//ItemsControl/Button.Tag /Button 也可以直接添加到Button资源里使用 Button Name tb Content Click meButton.Resourceslocal:BindingProxy k:KeymyButton Data{Binding ElementNametb}//Button.ResourceButton.TagItemsControlTextBlock Text {Binding Source{StaticResource myButton},PathData.Content}//ItemsControl/Button.Tag /Button 只要父子关系成立就可以绑定写在何处都无所谓。 同样也有一个继承了Freezable类的现有元素DiscreteObjectKeyFrame它通常用在动画上面没有BindingProxy轻量。
http://www.zqtcl.cn/news/673015/

相关文章:

  • 网站出现建设中集团网站建设特点
  • asp网站开发 pdf企业展厅设计公司盛世笔特
  • 怎么创建网站 免费的免费开源的网站系统
  • 中山精品网站建设资讯网页设计师就业趋势
  • 网站建设哪家好 万维科技wordpress广告公司模板
  • 如何选择建网站公司网站页面html静态化
  • 建设银行网站入口网页设计培训 周末双休
  • 做企业网站建设的公司为什么企业网站不是开源系统
  • 网站客户端怎么做的做汽车脚垫版的网站
  • 做数学题挣钱的网站广西建筑特种作业证件查询官网
  • 汉字叔叔花了多少钱做网站免费原创视频素材
  • 网站开发提现功能互联网推广工作好做吗
  • 做阿里渠道的销售要有哪些网站网站评论怎么做的
  • 建设中网站如何上传图片深圳营销型网站建设设计公司
  • 建设电商网站需要多少钱家具网页设计素材
  • 物流网站html5模板网站整站开发
  • 网站随机代码网站开发技术试验教程
  • 做翻译 网站吗仿京东电商的网站开发报价
  • 霞山网站建设公司网站开发怎样手机号验证
  • 大型门户网站建设苏州优化网站建设
  • 网站步骤怎么搭建个人网站
  • 荥阳网站建设公司wordpress会员上限
  • 采购需求网站建设呼伦贝尔网站开发
  • 东莞网站建设方案服务极速网站建设定制价格
  • 网站建设费记账福州百度网络推广
  • 中国农村建设网站邵阳房产网
  • 做非法网站网站上海备案查询
  • 网站制作要学哪些北京信管局 网站备案
  • 百度新闻源网站有哪些wordpress怎么配置七牛cdn加速
  • 山东城乡住房建设厅网站wordpress 购物网站主题