我有一个相当奇怪的问题,但我不知何故希望它是可能的。 但经过大量阅读后,我对此感到非常悲观。
这就是为什么我现在在这里问这个问题。
我有一些Lists / OberservableCollections,我是通过从我的串口读取来创建的。 现在我的应用程序中有一个调试屏幕,我只显示这些列表的内容。 到现在为止还挺好。它工作得很好。
现在我有一个设置/控制页面,我想使用这些数据来生成一个控制页面。 为此,我需要使用不同的数据流来接收和构建控件。
我得到的流如下:
第一个流将是视图的第一列。第二个流用于决定滑块的最小值和最大值,或者我是否需要滑块或其他东西。然后我有第三个流来设置滑块/控件的当前值。最后一个流用于在行尾添加单位描述。
在我读取流后,是否有可能以某种方式创建控件而不在代码隐藏文件中创建它们? 我没有从我的视图开始阅读操作,所以我不能直接使用文件背后的代码。 也许我可以从其他地方调用我的代码隐藏文件中的函数? 或者我应该为此实现一个事件? (从未这样做过)
我能想到的唯一选择是创建xaml中的所有元素并使用绑定控制它们的可见性,但这是完全不合理的,因为我将有大约100行参数......
我在这里真的有点无奈:/
祝你好运, 丹尼尔
答案 0 :(得分:1)
我实际上已经找到了答案......
在写这个问题时,我记得有可能使用事件处理程序。所以我查看了如何实现它们。
我发现答案非常快,但ObservableCollection每次向其添加元素时都会触发一个事件。我不想要,因为我有100个活动......
所以我在SO上找到了另一篇文章,并实现了ObservableCollection的扩展版本。
此扩展程序实现了AddRange
选项。它只是清除集合并添加另一个集合。有了这个,CollectionChanged
事件只会触发一次,我很高兴:D