Keith™ 发表于 2018-8-9 21:33:27

我有点厌倦了必须弄清楚如何修复基本上不应该是问题的东西
我发现了调色板控件行为中的一个缺陷,我只能将其描述为一个缺陷
我的调色板目前有两个控件,一个带有各种文本框和组合框,另一个带有多种复选框、组合框和数字向上/向下
想象一个调色板有两个用户控件,每个控件上都有一个组合框
选择控件1<br>聚焦组合框<br>选择控件2<br>使用滚动按钮<br>控件1上的组合框更改<br>选中控件1<br>使用滚动键<br>什么都不发生<br>选择控件2<br>在控件1上使用滚动按钮>组合框更改<br>似乎控件保持聚焦,即使它不可见<如果我打字,同样的事情也会发生。文本将转到隐藏控件上的控件<太气人了!

Keith™ 发表于 2018-8-9 23:26:32

我不得不求助于对调色板集进行子类化,以便能够公开所需的函数,使它们按应有的方式运行。

Keith™ 发表于 2018-8-10 14:23:16


除了显示/隐藏,您还需要什么功能?其他一切都应该由调色板处理。我使用MVVM,因此功能在ViewModel中。

MexicanCustard 发表于 2018-8-14 08:59:44


没有好的方法可以访问基础用户控件公开的函数和属性。就我而言,这非常重要。
我想我可以拼凑出数十个不同的全局对象,这些对象表示每个用户控件,但我仍然必须处理调色板集事件,以确定在任何给定时间需要处理哪些对象。
在调色板集中,您只能通过索引来激活调色板...如果您不知道那是什么(如果您的温度调色板集是动态创建的,那么您就无法真正知道),那么最好的选择是通过名称激活调色板。我现在可以做到。
在选项板集中,您无法获取活动选项板。我现在可以做到。
哦,事实上,调色板确实喜欢保持焦点,尽管失去了对调色板本身的焦点,但控件似乎永远不会失去焦点。微软表示,这是因为调色板本身与调色板集处于不同的焦点集中,因此从技术上讲,如果调色板集中有5个调色板,则可以拥有5个聚焦控件,令人惊讶的是,所有或没有一个可以在任何给定时间处理用户输入。这就是最初促使我使用子类的原因.我的类强制具有焦点的控件在停用时失去焦点。
我实际上已经看过许多利用调色板的OOB软件程序,我发现它们都将它们子类化以添加功能。
页: 1 [2]
查看完整版本: 调色板的麻烦...