问题标签 [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.
c# - RelativeSource 适用于(嵌套的)子属性,而 ElementName 不适用
下面代码的问题是:绑定到SomeClassProp.SubTextProp
不起作用(源属性未设置为文本框内容),而绑定到TextProp
它。
XAML:
和代码:
我在这里遗漏了一些明显的东西吗?
请注意,我需要此绑定才能从目标(文本框)到源(类属性)。
更新:当我将绑定更改ElementName=wMain
为RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type Window}}
- 两个绑定都有效。所以问题是特定于ElementName
绑定属性的。
wpf - 将逻辑树外部的 DependencyObject 绑定到逻辑树中的元素的属性
已编辑
问题总结:
我有一个自定义控件,它有一个ObservableCollection
of DependencyObject
s。因为DependencyObject
s 不是控件的子控件,所以它们不在逻辑树中。但是,我需要它们使用 XAML 绑定到逻辑树中元素的属性。(我不能使用代码隐藏。)我尝试使用Source={x:Reference blah},但由于周期性依赖限制,我无法使用它。
有谁知道我如何将DependencyObject
s 添加到逻辑树?或者有没有人有任何其他想法如何解决这个问题?
细节:
我正在开发一个自定义ComboBox
. 我希望我的一个es根据同一窗口上ComboBox
其他es中选择的值过滤可见的项目。ComboBox
例子:
一个ComboBox
显示存储在我的数据库中的产品列表,另一个显示产品类型。我希望第二个ComboBox
在选择项目时过滤第一个的可见项目,我希望第一个ComboBox
过滤可见项目并设置第二个的值。
由于我设置“ProductTypes”表的方式,“typeName”字段不是唯一的,所以如果我希望我ComboBox
只显示产品类型的唯一名称,那么我必须使用dataTable.DefaultView.ToTable(unique: true, column: "typeName").DefaultView
.
代码:
customComboBox
有一个ObservableCollection
ofFilterBinding
对象,它绑定到其他ComboBox
es 的选定值。这是FilterBinding
课程:
这是我的自定义代码ComboBox
。它实际上继承自 Telerik 的RadComboBox
,但它的行为非常像普通的ComboBox
。
这是 XAML:
但是,它不会绑定 FilterBindings,因为 ElementName 仅适用于逻辑树中的元素。
我不使用 MVVM。相反,我得到了一个DataTable
通过 SQL。最终我将使用 EntityFramework,但它不会改变ItemsSource
将分配给DataView
从 LINQ 派生的事实。我需要使用的原因DataView
是因为有时DisplayMemberPath
会引用具有非唯一条目的列,这些条目需要在ComboBox
.
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?
wpf - Wpf,如何从另一个用户控件中查找元素名称
在这个用户控件里面
这里的问题是这个 TargetObject="{Binding Command, ElementName=SaveButton}" 没有找到 SaveButton,因为它在 userControls:SaveCloseUserControl 我在网上看了,我找到了一个需要后面代码的解决方案(从 2009 年开始),是否没有今天做这些事情的简单方法?问候
编辑
根据@huzle 的回答,我在用户控件背后的代码中做到了这一点
在 xaml 中,我为保存按钮添加了一个名称。
所以我的最终版本看起来像这样
c# - 控件通过 ElementName 绑定到其他控件,但不显示初始值
我有两个控件 WPF DatePicker 和 WPF 扩展工具包 DateTimeUpDown。DatePicker 有两种方式绑定到 ViewModel 中的 DateTime 属性,而 DateTimeUpDown 通过 Element 绑定到 DatePicker。
绑定在滚动 DateTimeUpDown 时工作正常,这会更改 DatePicker 控件。但是,当设置 ViewModel 中属性的初始值时,不会设置 DateTimeUpDown 值。
这或多或少是这样的:在 Resources.xaml
在视图模型中
设置 FromDateTime 后,DatePicker 设置正确,但 DateTimeUpDown 值未设置。
我现在尝试为绑定添加跟踪,不幸的是这对我没有多大帮助:
更新
我发现了问题。显然我的问题是由于绑定到了一个专门的类,该类的属性是在父类上定义的。当“覆盖”继承类中的属性实现时,它可以工作。这没有意义,但它有效。
data-binding - Xamarin.Forms 视图到视图绑定而不更改 BindingContext
我Button
在 XAML 中定义了一个Command
包含一个CommandParameter
. Command
绑定到当前视图的 ViewModel,而绑定CommandParameter
到当前视图中的另一个控件。在 WPF 中,这看起来像:
根据文档BindingContext
,在 Xamarin.Forms 中,可以通过使用x:Reference
标记扩展更改控件来实现视图到视图的绑定:
但是,在这种情况下,我无法将 绑定Command
到全局 Viewmodel!这种情况有什么解决方案吗?
c# - 组合框显示绑定值,但无法选择
我对组合框有一些非常奇怪的行为。Threre 绑定了一个 ObservabalCollection。值显示正确。我可以将一些值添加到绑定到 combobox_PragmaSections 的集合中,它们会显示出来,我可以在它们之间切换。
有一些文本框和一个 DoubleUpDown,我可以在其中设置 combobox_PragmaSections 所选项目的一些属性。
当我在文本框或 DoubleUpDown 中插入一些值时,combobox_PragmaSections “冻结”。它显示了包含的值,下拉是可能的但是如果我尝试选择另一个值而不是当前值,什么也不会发生。当我删除我的 isEqual 和 getHashCode 函数时,它可以工作......有没有人知道发生了什么?
xaml - {Binding ElementName=...} 不适用于任何 CompositeTransform 属性
我有以下代码,其中我在主网格(LayoutRoot)下隐藏了一个 WebView,以便稍后可以制作滑动动画:
当我第一次{Binding ElementName=...}
在设计器中输入线条时,WebView 会出现在 Grid 的正下方,就像它应该出现的那样。但是,当我重建解决方案或运行应用程序时,WebView 只会遮盖整个 LayoutRoot。
无论我绑定什么/无论控件是什么,都会发生这种情况;但是,绑定到完全相同的表达式将在设计器和手机中正确显示。为了证明我在说什么:
有没有办法绑定到LayoutRoot.ActualHeight
为此编写 C# 代码?
c# - 来自 Binding ElementName 的值产生空字符串
我有一个 DataGrid,它有一个 DataGridTemplateColumn,其中包含一个 ListView,它的 Itemsource 绑定到一个字符串数组。
在该 ListView 中,我定义了一个 ItemTemplate,因为我希望列表中每个项目的 Foreground 依赖于条件 - 所以这适用于 TextBlock。
我希望在 ListView 中的每个项目悬停时显示一个工具提示,所以我在该 TextBlock 中定义了一个工具提示
我想要做的是让工具提示使用转换器显示有关特定项目的标题/详细信息(以获取不同列表中项目的索引)。
为此,我需要工具提示来了解 ListView 项目,但我似乎无法让它工作。TextBlock 本身使用 检索它Path=.
,我尝试命名 TextBlockListItem
并将其检索为 ElementName 无济于事 - 结果只是空字符串。
这是相关的 xaml(删除了格式属性)。
wpf - WPF TextBox Binding ElementName null?
我有一个带有 TypeUsers 的 ListBox 控件。当我在 Listbox 中选择一些记录并在 TextBox 中更新 Name 时,Name 属性/文本框总是返回 null。永远不要从 TextBox 中取值,总是 null ?
这是我的代码
编辑
谢谢你。