问题标签 [xmldataprovider]

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 投票
0 回答
306 浏览

c# - 更新位于服务器上的 XML 文件时如何刷新 XmlDataProvider?

在下面的代码中:有没有办法在我更新 myXml.xml 时自动更新 ComboBox.Items?

我知道如果 'myXml.xml' 是本地的,我可以FileSystemWatcher这样使用。但是这个怎么样?

0 投票
1 回答
1005 浏览

wpf - 将 ItemsSource 绑定到 XML 字符串

我有一个数据库存储过程调用,除其他列外,它返回一个包含 XML 格式数据的列。我正在尝试在网格中显示此调用的结果(调用是通过实体框架进行的,因此绑定到网格的实际对象是 POCO,有问题的列是string属性)。

虽然正常列正确显示,但我需要能够获取该列中的 XML 数据并将其内容(它将包含多个节点)绑定到ItemsControl单元格模板中的一个。

例如,假设我有一个显示以下对象集合的网格:

这旨在表示一张照片,并且该TagListXml属性包含一个 XML 字符串,其中列出了已应用于该照片的所有标签。类似于...的东西

(虽然很明显一个普通的 POCO 会有一个List<string>或类似的东西,让我们暂时假设我必须使用一个 XML 字符串)

在我的网格中,我希望能够指定一个ItemsControl使用此 XML 并最终为我提供项目FacesPeopleSepia.

我已经为单元格模板尝试过这个:

wherexmlConverter是这样定义的:

Anddc:StringToXmlConverter是一个自定义IValueConverter,它只接受一个字符串值,实例化一个XmlDocument并加载字符串,然后返回一个XmlDataProvider带有该新文档和XPath上面指定的。

虽然这不会在输出窗口中以异常或绑定错误的形式产生任何错误,但它不会任何事情(没有显示结果)。

我相信这是因为 anXmlDataProvider不能ItemsSource直接设置为 a ,而是必须设置为Sourcea Binding。(换句话说,你必须做ItemSource="{Binding Source={StaticResource xmlProvider}}"而不是ItemsSource="{StaticResource xmlProvider}")。

我似乎无能为力,在过去的几个小时里,我一直在努力解决这个问题。

如何将 XML 字符串绑定ItemsSourceItemsControl?

0 投票
0 回答
290 浏览

wpf - 获取 System.Windows.Data 时出现数据绑定问题错误:49(XmlDataProvider 中的 XmlNamespace)

我使用 XMLDataProvider 在 ListBoxes 中显示一些简单的数据。我用“”(空字符串)的值定义了 xmlns 属性。

例如:

我仍然收到错误“System.Windows.Data 错误:49:XmlDataProvider 具有未明确设置其 XmlNamespace (xmlns="") 的内联 XML。” 在输出窗口中,但可以运行我的应用程序,我可以在列表框中看到数据。

但是我的应用程序中还有另一个问题。在此错误之后(似乎)发生的某些绑定不起作用。当我关闭视图(我使用棱镜)并再次加载视图时,我能够让那些受影响的绑定工作。现在我仍然得到错误 49,但我的绑定工作。

有什么我做错了吗?或者有没有 XmlDataProvider 的替代品?我只需要一种方法来以简单的方式定义一些简单的数据用于显示和选择目的!

0 投票
0 回答
92 浏览

wpf - 执行绑定后显示 WPF 窗口

我有一个 WPF 窗口,单击屏幕上的按钮后会显示该窗口。该窗口使用 XmlDataProvider 动态构建表。我遇到的问题是,在调用 Show() 方法时,窗口在很短的时间内以折叠模式显示,然后随着 XML 文件中的数据被填充,它变得更大。有什么方法可以延迟窗口的显示,直到数据被填充,以避免这种令人不快的视觉效果?

提前感谢您的意见!

——纳乔

0 投票
0 回答
887 浏览

c# - 将 TreeView 保存到 XML 并在 WPF/C# 中从 XML 加载它

我在这里找到了一些关于如何将树视图保存到 xml 并使用 WPF/C# 从 xml 加载它的问题和答案。但是,使用 xmldataprovider,它们都不起作用,使用 AppendChild,exporttoxml 起作用,但无法从保存的 xml 导入它。

在 xmldataprovider 的情况下,它具有 XAML 中的架构,因此一旦将 xml 加载到树视图上,它似乎不允许用户更新树视图。

我正在寻找一种可以将树视图保存到 xml 并从保存的 xml 加载它以及允许用户在将 xml 加载到树视图后修改树视图的方法。

有谁知道该怎么做?

0 投票
1 回答
868 浏览

wpf - 如何使用加密的 xml 文件作为 xaml 数据绑定的应用程序资源?

我想使用加密的 xml 文件作为应用程序资源,以便轻松绑定 xaml 数据。Xml 文件在不同的应用程序中被加密。我可以使用未加密的 xml 进行数据绑定。我不能对加密的 xml 使用相同的方法,因为文件在加载时是加密的。我必须先解密它才能使用它。问题是,我在哪里放解密算法?

在这里我如何创建加密文件(省略了解密和验证解密数据的代码)

要解密,我只是调用这些(假设 xmlDoc 和算法与上面相同。

下面是基于msdn的加解密算法(没什么特别的)。

我想使用加密的 xml 数据作为数据源,以便在 xaml 中轻松进行数据绑定。我在应用程序级别声明 xml 数据以进行应用程序范围的访问。这是我在 App.xaml 中声明它的方式。

问题是,我需要在加载 App.xaml 之前解密 xml 文件。有没有可能做到这一点。我怎么做。我在哪里解密xml文件?

简而言之,如何使用加密的 xml 文件作为应用程序资源?

0 投票
1 回答
354 浏览

c# - 在 TreeView 中对 XmlData 进行排序

我有一个 TreeView,我用来自 XmlDataProvider 的数据填充。这是我创造了自己的东西。我想对 TreeView 中的项目进行排序,但无法使其正常工作。因此,我为您制作了一个示例代码,您可以将其粘贴到您的 VS 中并进行测试,也许您可​​以看到代码有什么问题。

XAML

和 CodeBehind

所以我想要发生的是,当我按下按钮时,TreeView 的排序应该改变并在之后排序,sortPos而不是与我将它们添加到 xml 的顺序相同。

0 投票
1 回答
110 浏览

c# - 不需要的复选框/数据源行为,内容在 checkbox.Checked 事件上重新加载

我有一个带有文本框、复选框和按钮的表单。TextBox 和 Button 通过 .xml 文件中定义的 XmlDataProvider 绑定到 xml 文件Grid.Datacontext。的文本textbox.Text在按钮单击时更改。

问题来了:当我选中/取消选中复选框时,TextBox.Text属性重置为XmlDataProvider.

如何防止复选框从我的 DataProvider 重新加载数据?为什么我的复选框会这样?

此行为也适用于其他控件,例如ComboBox,DataPickerRadioButton

演示应用程序的屏幕截图,代码如下

我创建了一个简单的示例来说明问题:

MainWindow.xaml:

主窗口.xaml.cs

数据源(datecontext.xml):

0 投票
1 回答
989 浏览

wpf - WPF - 通过 XmlDataProvider 来自 XML 的菜单项

我试图通过 XmlDataProvider 解析来自 XML 的菜单项,但没有运气。出现“添加项目 2”菜单,但仅从该菜单中打开一个空白项目作为子菜单。

我究竟做错了什么?

在我的 XAML 中,我有:

和:

在 XML 中:

0 投票
1 回答
979 浏览

wpf - 在 MVVM 中将 XamDataGrid 绑定到 XmlDataProvider

我无法将 a 绑定XamDataGridXmlDataProvider我的 MVVM 样式项目中的属性。

我从 WebService 调用中获取 XML 字符串,创建 XmlDataProvider,然后尝试将其绑定到 XamDataGrid。XmlDataProvider 正在正确初始化。只是绑定部分不正确。

查看.xaml


视图模型.cs


示例 xml 字符串

通过遵循示例 Infragistics 代码,我能够以代码隐藏的方式毫不费力地做到这一点。但是,这是我遇到困难的 MVVM 方式。

此解决方案似乎不适用于 XamDataGrid。