首页 > 其他分享 >WPF,Frame控件的一个BUG

WPF,Frame控件的一个BUG

时间:2024-04-14 21:02:08浏览次数:26  
标签:控件 Frame 绑定 BeginInvoke new WPF frame

我使用WPF默认的frame

<Frame Style="{DynamicResource FrameStyle1}" x:Name="frame" Height="80" NavigationUIVisibility="Visible"/>

然后添加几次导航

Task.Run(async () =>
{
this.Dispatcher.BeginInvoke(() => this.frame.Navigate(new Page1() as Page, "page1"));
await Task.Delay(1000);
this.Dispatcher.BeginInvoke(() => this.frame.Navigate(new Page2() as Page, "page2"));
await Task.Delay(1000);
this.Dispatcher.BeginInvoke(() => this.frame.Navigate(new Page3() as Page, "page3"));
});

问题是一打开导航日志

就会出现绑定失败
找不到源: RelativeSource FindAncestor, AncestorType='System.Windows.Controls.Menu', AncestorLevel='1'。
这是导航日志命令MenuItem.CommandTarget的目标没找到。
就是这里

经过我长时间排查,使用debugbinding转换器介入绑定过程,发现转换器的Convert函数中能看到目标控件,也就是说命令的目标是应该找到了的,
但为什么还会绑定失败

应用样式还是我为了方便排查,原来是不使用样式也会出现绑定错误

标签:控件,Frame,绑定,BeginInvoke,new,WPF,frame
From: https://www.cnblogs.com/ggtc/p/18134669

相关文章

  • HTML 高级用法 iframe框架
    HTML中,<iframe>标签允许一个HTML文档被嵌入到另一个HTML文档中。这种技术可以用于多种用途,比如嵌入第三方内容(例如YouTube视频或Google地图)、实现网页中的多窗口布局,或者加载异步内容而不影响主页面的加载时间。<iframe>的高级用法可以增强网站的功能性和用户体验,但也需要注意使......
  • C# 面试 wpf .net 面试准备
    杂项介绍下自己时间一分半以内提炼自身优点,优势、亮点、基本情况言简意赅、语言精炼,控制时间和应聘岗位相关的经历(和招聘要求相关)为什么能够胜任岗位为什么要应聘该岗位~求职动机不能只介绍学校和专业,注意:重点介绍满足岗位要求的三个优势和亮点。表现出对岗位的理解和......
  • 【Nano Framework ESP32 篇】刷入 nanoCLR 固件以及相关问题
    老周在几个世纪前曾写过树莓派相关的iOT水文,之所以没写NanoFramework相关的内容,是因为那时候这货还不成熟,可玩性不高。不过,这货现在已经相对完善,老周都把它用在项目上了——第一个是自制的智能插座,这个某宝上50多块可以买到,搜“esp32插座”就能找到。一种是86型盒子的,带屏......
  • WPF新建viewModel实例化成员的注意事项
    不要用表达式体去初始化一个用做数据源(比如ItemSource)的引用类型成员。比如这种publicList<MainWindowItem>Items=>newList<MainWindowItem>(){newMainWindowItem{title="项目管理",icon="\ue613",type=typeof(项目管理Control),group="内部管理"},new......
  • WPF深入浅出的 6.3.3 Binding的路径(Path)
    根据WPF的6.3.3Binding的路径(Path)代码验证结果 publicclassCity{publicstringName{get;set;}}publicclassProvince{publicstringName{get;set;}publicList<City>CityList{get;set;}}publ......
  • QML::自绘基础控件
    自绘基础控件1.01Button,对属性进行封装,如字体、背景颜色、前景文字显示、(选择、悬停、按下)状态变化。对外提供必要的设置属性。importQtQuick2.0importQtQuick.Controls2.5importQtGraphicalEffects1.12Button{id:container//提供对外字段属性prop......
  • WPF自定义Window
    前言我们使用WPF开发客户端软件时,一般来讲都不会直接使用默认的Window样式,因为很难符合项目的风格,所以我们一般会自定义Window,一般有两种方式。WindowStyle=None和自定义Window,本文主要介绍第二种。一、WindowStyle=NoneWindowStyle="None"将Window的整个边框就去掉了,好处是......
  • Devexpress 控件学习记录(一:BarManager 控件、XtraTabbedMdiManager 控件)
    BarManager控件最终实现的效果如下:首先在窗体中拖出BarManager控件,窗体Baradd地方点击添加设置BarManager的属性设置出现的窗体的底部【DockStyle=Bottom】点击AddDropDownMenu添加下拉菜单出现下拉菜单设置下拉菜单中的子菜单选中下拉菜单,然后点击下面的Add......
  • WPF 项目开发
    1、WPF文件管理助手1.1、文件比较1.2、文件差异1.3、文件上传下载2、WPF数据库同步助手2.1、数据表对比2.2、数据同步3、WPF视频录屏软件3.1、屏幕录屏3.2、区域录屏3.2、应用录屏3.3、录制GIF4、WPF软件自动升级器4.1、服务端4.2、客户端5、WPF软件授权码 6、WPFUI7、W......
  • 界面控件DevExpress WinForms/WPF v23.2 - 富文本编辑器支持内容控件
    众所周知内容控件是交互式UI元素(文本字段、下拉列表、日期选择器),用于在屏幕上输入和管理信息。内容控件通常在模板/表单中使用,以标准化文档格式和简化数据输入。DevExpress文字处理产品库(WordProcessingDocumentAPI、WinForm和WPF富文本编辑器)附带了内容控制支持(v23.2+)。具......