如何从 XAML (WPF) 访问 DataContext 中的变量?

发布于 2024-10-26 20:46:01 字数 233 浏览 2 评论 0原文

例如,我在 CodeBehind 中有一个数组,我想将其绑定到 XAML 中的 DataGridComboBox。

首先,我知道我必须将数组放入 DataContext(ok),但是我如何从 XAML 访问数组?

我如何在 DataGridComboBox 中进行引用以将数组中的项目绑定到 ComboBox 中?

我的问题是使用 DataContext,我无法真正理解如何使用 DataContext。

For example, i have an array in CodeBehind, that i want to bind to a DataGridComboBox in XAML.

First, i know i have to put the array in the DataContext(ok), but then how i access the array from XAML?

And how i make reference in the DataGridComboBox to bind the items from the array into the ComboBox?

My problem is working with DataContext, i can't really understand how to work with the DataContext.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

寻找我们的幸福 2024-11-02 20:46:01

在 WPF 中,DataContext 只是为 XAML 中的绑定表达式提供根路径的对象。

因此,当您设置 DataContext 时,也许在代码隐藏中,例如:

string[] DataArray = new[] { "John", "Peter", "Paul" };`
this.DataContext = DataArray;

您可以从 XAML 访问它,例如:

您现在正在访问凭借 DataContext 属性,DataArray 上的 Count 属性。

如果您想要特定的数组元素,您可以指定一个索引:

如果您想使用数组作为源支持集合的元素:

绑定表达式没有参数,只需直接访问 DataContext(在本例中为数组)。

希望有帮助!

In WPF, the DataContext is simply the object that provides the root path for Binding Expressions in the XAML.

So when you set DataContext, perhaps in the code-behind like:

string[] DataArray = new[] { "John", "Peter", "Paul" };`
this.DataContext = DataArray;

You can access it from the XAML like:

<TextBox Text="{Binding Path=Count}" />

You are now accessing the Count property on DataArray, by virtue of the DataContext property.

If you wanted a particular array element, you could specify an index:

<TextBox Text="{Binding Path=[0]}" />

If you wanted to use the array as the source to an element that supports a collection:

<ItemsControl ItemsSource="{Binding}" />

No arguments to a binding expression simply accesses DataContext directly, in this case, an array.

Hope that helps!

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文