问题标签 [frameworkelementfactory]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
725 浏览

c# - FrameworkElementFactory 信息

我一直在互联网上到处寻找有关该FrameworkElementFactory课程的适当文档,但似乎找不到适当的教程或有用的信息。

对这个主题有更多了解的人可以给我更多的信息吗?这是我到目前为止从这个问题中发现的:(感谢鲍勃)

将 ItemsSource 绑定到myDataGrid



创建一个 DataGridTemplateColumn



当您在 DataCell 中为 DataGrid 列显示值时创建数据模板



在为 DataGrid 列编辑 DataCell 中的值时创建数据模板



将完成的 DataGridColumn 添加到您的 DataGrid

0 投票
0 回答
833 浏览

c# - 如何从 WPF 中的 FrameworkElementFactory 获取控件类型(UIElement)?

我正在为一个更大的应用程序开发一个大型插件组件。这个特定视图组件的 90% 是非常动态的(数据库驱动的)并且以编程方式完成。有一个特殊的原因(最小 XAML),所以要跳出框框思考。不,我不能回去重新构建由 1000 行代码组成的代码库……那是未来的版本。

我可以通过 FrameworkElementFactory 设置值、绑定和添加处理程序,但需要访问控件本身来执行其他任务。一项任务是将 ToolTipService 添加到每个 FrameworkElement。如果我向每个派生控件添加一个 Loaded Event,然后通过处理程序通过将其添加到索引对象集合来管理它,我就可以做到这一点,但这是一种非常丑陋的做法。

我将这个小片段(如下)放在一起进行测试,但它包含了手头的问题。

主窗口.xaml

主窗口.xaml.cs

网格对象.cs

非常感谢任何建设性的帮助。谢谢你们的时间。

电脑断层扫描

0 投票
1 回答
1465 浏览

c# - 将处理程序添加到工厂

我无法让它工作。

我需要动态设置数据网格的列。其中一列是带有 DoubleUpDown 对象的 DataGridTemplateColumns (来自库)

我创建FrameworkElementFactory这样的:

这会在运行应用程序时引发“System.Windows.Markup.XamlParseException”类型的异常。问题出在 AddHandler 方法中,如果我评论该行它工作正常,但显然我需要在该处附加一个事件以在值更改时执行操作。

任何人都可以帮助我吗?提前致谢

0 投票
0 回答
133 浏览

wpf - 获取 new FrameworkElementFactory(typeof(T)) 创建的对象

我们将 DataGridTemplateColumn 添加到 DataGrid,并使用通过创建的组合框填充 DGTC

稍后,我们需要更改 TextSearch.TextPathProperty 等属性。
我们从 DataGridTemplateColumn 中获取 CellEditingTemplate;问题是,“如何将 CellEditingTemplate.VisualTree 作为组合框访问”?

此代码表明 VisualTree 是一个组合框:

输出:
键:类型值:Windows.Controls.ComboBox

似乎没有办法将 VisualTree 转换为 ComboBox。
我在看什么?
谢谢 -

0 投票
1 回答
141 浏览

c# - 来自 FrameworkElementFactory 类型组合框的 Interaction.GetBehaviors

我试图隐藏从 FrameworkElementFactory 设置的动态组合框。如果我尝试将 Combobox 作为参数,那么我会收到错误“ComboBox”是一种类型,它在给定的上下文中无效,如果我尝试将 fElement 作为参数,那么它会给出错误“无法从 'System.Windows.FrameworkElementFactory' 转换为'System.Windows.DependencyObject'" 我需要 C# 中的解决方案,而不是 xaml 或 ASP.net。

0 投票
1 回答
211 浏览

c# - 以编程方式将路径数据分配给 Thumb 控件并将其添加到 Canvas

我想做的是在特定位置以编程方式创建一个矩形,我想在添加到 Canvas 之前将其分配给 Thumb 控件。原因是我想稍后实现拖放。但是下面这段代码的问题是我从来没有在画布内看到任何东西,请帮忙。当我尝试调试时,我在 fact 变量中看不到任何数据,并且 t.HasContent 为假。

0 投票
0 回答
68 浏览

c# - 如何以编程方式将 DataGridTemplateColumn 添加到 FrameworkElementFactory(typeof(DataGrid))?没有 xaml 解析

我想像这样以编程方式创建一个数据网格

但这会引发异常:

我知道 FrameworkElementFactory 已被弃用,但对我来说是最简单的方法。是否有使用 FrameworkElementFactory 或使用 Xaml 解析转换为 FrameworkElementFactory 的解决方案。

0 投票
1 回答
563 浏览

wpf - 在 wpf 中绑定单元格模板

我只是以编程方式从 devexpress 和所有单元格创建一个 GridControl 并以这种方式绑定它的 ItemsSource

现在我想将一个按钮放在一个列中并通过 id 绑定它,当单击按钮时打开一个用户控件与相应的行 id 但它不起作用我的代码是:

我无法在 XAML 中创建我的 gridControl,因为我在许多不同的选项卡中创建了许多具有不同列的 gridControl:我知道,你为什么这么害怕 XAML,但是 XAML 不够灵活:太多了!

正是“id”没有绑定到按钮我想获取每一行 id 并将其绑定到按钮标签属性。

0 投票
0 回答
43 浏览

wpf - 专注于 WPF 中的 FrameworkElementFactory

我在我的 WPF 程序中使用 FrameworkElementFactory 作为以下代码:

我尝试以编程方式关注此 FrameworkElementFactory,并使用 VisualTreeHelper.HitTest 进行了尝试。有什么方法可以专注于 *txt1 * liketxt1.Focus或 HitTest 吗?

我在 Listview 上创建了它并以编程方式填写了它的列。并根据以下代码设计这个Listview:

我通过 xaml 创建了一个按钮,当我想单击按钮时,我想专注于 txt1

0 投票
0 回答
64 浏览

c# - AddHandler 到 FrameworkElementFactory ComboBox - 类型错误?

阅读了很多关于这个明显令人烦恼的问题的答案,包括这个似乎指明了方向的出色回复:Add handler to factory,经过几天尝试阅读各种不同的建议后,我仍然无法在我的设置中使用它在这个网站上。

因此,底层数据结构的公共成员是:

目标 UI 元素是 DataGrid。所有列都在代码中显式创建。这是第 4 列的代码,用于保存 ComboBox。为选项列表 (ItemsSource)、所选项目、控件是否显示(不是在网格的每一行上)和(尝试)传递对“更改处理程序”的引用提供绑定。工厂元素 ComboBoxes 没有用于更改处理程序的 DP。所以我的代码看起来像这样,遵循上面链接中给出的信息: