问题标签 [elementname]

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 回答
1293 浏览

c# - RelativeSource 适用于(嵌套的)子属性,而 ElementName 不适用

下面代码的问题是:绑定到SomeClassProp.SubTextProp不起作用(源属性未设置为文本框内容),而绑定到TextProp它。

XAML:

和代码:

我在这里遗漏了一些明显的东西吗?

请注意,我需要此绑定才能从目标(文本框)到源(类属性)。

更新:当我将绑定更改ElementName=wMainRelativeSource={RelativeSource FindAncestor, AncestorType={x:Type Window}}- 两个绑定都有效。所以问题是特定于ElementName绑定属性的。

0 投票
1 回答
691 浏览

wpf - 将逻辑树外部的 DependencyObject 绑定到逻辑树中的元素的属性

已编辑

问题总结:

我有一个自定义控件,它有一个ObservableCollectionof DependencyObjects。因为DependencyObjects 不是控件的子控件,所以它们不在逻辑树中。但是,我需要它们使用 XAML 绑定到逻辑树中元素的属性。(我不能使用代码隐藏。)我尝试使用Source={x:Reference blah},但由于周期性依赖限制,我无法使用它。

有谁知道我如何将DependencyObjects 添加到逻辑树?或者有没有人有任何其他想法如何解决这个问题?

细节:

我正在开发一个自定义ComboBox. 我希望我的一个es根据同一窗口上ComboBox其他es中选择的值过滤可见的项目。ComboBox

例子:

一个ComboBox显示存储在我的数据库中的产品列表,另一个显示产品类型。我希望第二个ComboBox在选择项目时过滤第一个的可见项目,我希望第一个ComboBox过滤可见项目并设置第二个的值。

由于我设置“ProductTypes”表的方式,“typeName”字段不是唯一的,所以如果我希望我ComboBox只显示产品类型的唯一名称,那么我必须使用dataTable.DefaultView.ToTable(unique: true, column: "typeName").DefaultView.

代码:

customComboBox有一个ObservableCollectionofFilterBinding对象,它绑定到其他ComboBoxes 的选定值。这是FilterBinding课程:

这是我的自定义代码ComboBox。它实际上继承自 Telerik 的RadComboBox,但它的行为非常像普通的ComboBox

这是 XAML:

但是,它不会绑定 FilterBindings,因为 ElementName 仅适用于逻辑树中的元素。

我不使用 MVVM。相反,我得到了一个DataTable通过 SQL。最终我将使用 EntityFramework,但它不会改变ItemsSource将分配给DataView从 LINQ 派生的事实。我需要使用的原因DataView是因为有时DisplayMemberPath会引用具有非唯一条目的列,这些条目需要在ComboBox.

0 投票
1 回答
145 浏览

jquery - Find element via parameterized css selector

I'm building a menu with jQuery with several hyperlink and what I want is to show / hide a div containing the sub menus when I click on the hyperlink.

I tried the following:

But it doesn't work!

Can anyone help me?

0 投票
1 回答
1608 浏览

wpf - Wpf,如何从另一个用户控件中查找元素名称

在这个用户控件里面

这里的问题是这个 TargetObject="{Binding Command, ElementName=SaveButton}" 没有找到 SaveButton,因为它在 userControls:SaveCloseUserControl 我在网上看了,我找到了一个需要后面代码的解决方案(从 2009 年开始),是否没有今天做这些事情的简单方法?问候

编辑

根据@huzle 的回答,我在用户控件背后的代码中做到了这一点

在 xaml 中,我为保存按钮添加了一个名称。

所以我的最终版本看起来像这样

0 投票
2 回答
402 浏览

c# - 控件通过 ElementName 绑定到其他控件,但不显示初始值

我有两个控件 WPF DatePicker 和 WPF 扩展工具包 DateTimeUpDown。DatePicker 有两种方式绑定到 ViewModel 中的 DateTime 属性,而 DateTimeUpDown 通过 Element 绑定到 DatePicker。

绑定在滚动 DateTimeUpDown 时工作正常,这会更改 DatePicker 控件。但是,当设置 ViewModel 中属性的初始值时,不会设置 DateTimeUpDown 值。

这或多或少是这样的:在 Resources.xaml

在视图模型中

设置 FromDateTime 后,DatePicker 设置正确,但 DateTimeUpDown 值未设置。


我现在尝试为绑定添加跟踪,不幸的是这对我没有多大帮助:


更新

我发现了问题。显然我的问题是由于绑定到了一个专门的类,该类的属性是在父类上定义的。当“覆盖”继承类中的属性实现时,它可以工作。这没有意义,但它有效。

0 投票
2 回答
2000 浏览

data-binding - Xamarin.Forms 视图到视图绑定而不更改 BindingContext

Button在 XAML 中定义了一个Command包含一个CommandParameter. Command绑定到当前视图的 ViewModel,而绑定CommandParameter到当前视图中的另一个控件。在 WPF 中,这看起来像:

根据文档BindingContext,在 Xamarin.Forms 中,可以通过使用x:Reference标记扩展更改控件来实现视图到视图的绑定:

但是,在这种情况下,我无法将 绑定Command到全局 Viewmodel!这种情况有什么解决方案吗?

0 投票
1 回答
63 浏览

c# - 组合框显示绑定值,但无法选择

我对组合框有一些非常奇怪的行为。Threre 绑定了一个 ObservabalCollection。值显示正确。我可以将一些值添加到绑定到 combobox_PragmaSections 的集合中,它们会显示出来,我可以在它们之间切换。

有一些文本框和一个 DoubleUpDown,我可以在其中设置 combobox_PragmaSections 所选项目的一些属性。

当我在文本框或 DoubleUpDown 中插入一些值时,combobox_PragmaSections “冻结”。它显示了包含的值,下拉是可能的但是如果我尝试选择另一个值而不是当前值,什么也不会发生。当我删除我的 isEqual 和 getHashCode 函数时,它可以工作......有没有人知道发生了什么?

0 投票
1 回答
540 浏览

xaml - {Binding ElementName=...} 不适用于任何 CompositeTransform 属性

我有以下代码,其中我在主网格(LayoutRoot)下隐藏了一个 WebView,以便稍后可以制作滑动动画:

当我第一次{Binding ElementName=...}在设计器中输入线条时,WebView 会出现在 Grid 的正下方,就像它应该出现的那样。但是,当我重建解决方案或运行应用程序时,WebView 只会遮盖整个 LayoutRoot。

无论我绑定什么/无论控件是什么,都会发生这种情况;但是,绑定到完全相同的表达式将在设计器和手机中正确显示。为了证明我在说什么:

有没有办法绑定到LayoutRoot.ActualHeight为此编写 C# 代码?

0 投票
1 回答
98 浏览

c# - 来自 Binding ElementName 的值产生空字符串

我有一个 DataGrid,它有一个 DataGridTemplateColumn,其中包含一个 ListView,它的 Itemsource 绑定到一个字符串数组。

在该 ListView 中,我定义了一个 ItemTemplate,因为我希望列表中每个项目的 Foreground 依赖于条件 - 所以这适用于 TextBlock。

我希望在 ListView 中的每个项目悬停时显示一个工具提示,所以我在该 TextBlock 中定义了一个工具提示

我想要做的是让工具提示使用转换器显示有关特定项目的标题/详细信息(以获取不同列表中项目的索引)。

为此,我需要工具提示来了解 ListView 项目,但我似乎无法让它工作。TextBlock 本身使用 检索它Path=.,我尝试命名 TextBlockListItem并将其检索为 ElementName 无济于事 - 结果只是空字符串。

这是相关的 xaml(删除了格式属性)。

0 投票
3 回答
745 浏览

wpf - WPF TextBox Binding ElementName null?

我有一个带有 TypeUsers 的 ListBox 控件。当我在 Listbox 中选择一些记录并在 TextBox 中更新 Name 时,Name 属性/文本框总是返回 null。永远不要从 TextBox 中取值,总是 null ?

图片说明在这里

这是我的代码

编辑

谢谢你。