问题标签 [binding-context]

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 投票
2 回答
328 浏览

javascript - 淘汰赛模板:自己的 BindingContext,相同的父母

我正在编写一个 bindingHandler 并希望创建一个具有与当前bindingContext相同的父级/父级上下文的绑定上下文。阅读:没有额外的绑定上下文层次结构。

背景:我编写了一个对话框绑定处理程序
一个 dom 节点有一个对话框绑定,例如data-bind="dialog: { childTemplate: 'childTemplateId' }"
单击后,一个通用对话框模板被渲染并附加到正文。您还指定了一个子模板(= 是所需的具体视图),它由binding-context-variable$childTemplateName的通用对话框模板选择。
子模板应该不知道在它和包含对话框绑定处理程序的级别之间有一个额外的层(= 通用对话框模板)。所以$parent, $parent.$parent, $parent.$parent.$parent,... 在子模板和具有 的 dom 节点中是相同的data-bind="dialog: ..."

我想要一个额外的绑定上下文,这样我就可以使用特定于这个“对话调用”的属性来扩展它,这样当前的绑定上下文就不会被污染。

0 投票
1 回答
61059 浏览

c# - 在 Xamarin.Forms 上的 XAML 中将 BindingContext 设置为 ViewModel

我想用 Xamarin.Form 和 MVVM 开发一个简单的项目。在我的解决方案(名为 XamarinPOC)中,我(除了标准 Xamarin.Forms 项目)有一个单独的模型项目(XamarinPOC.Model)和一个单独的 ViewModel 项目(XamarinPOC.ViewModel)。

我在 XamarinPOC.ViewModel 项目中为 BaseViewModel 类(实现 INotifyPropertyChanged 接口)定义了一个抽象类,并且在我创建了一个使用简单属性扩展 BaseViewModel 类的 SummaryViewModel 类之后:

接下来,我在 XamarinPOC 项目中创建了一个简单的 ContentPage (SummtyView),其中仅包含一个我希望显示 ViewModel 中定义的文本的标签。我想使用 XAML 来定义视图和绑定,但是当我运行应用程序时没有显示任何内容,我在编译时和运行时没有错误,但不显示文本。我的 XAML 是这个

最后我的 app.cs 是:

在 XamarinPOC 项目中,我添加了对 XamarinPOC.ViewModel 和 XamarinPOC.Model 程序集的引用。

我认为问题出在绑定的 XAML 定义中,但我没有找到错误。我哪里错了?

0 投票
0 回答
421 浏览

c# - Xamarin Forms ViewCell 不显示带有列表的绑定数据,但适用于元组

当我尝试在 Xamarin Forms 中连接 viewcell 以显示来自 BindingContext 的数据时出现奇怪的行为。

基本上我填充了一个对象来保存 3 张图片(除了其他东西) - 我是 Xamarin 的新手,我想我会尝试弄清楚如何构建一个 instagram 风格的照片库,我每行有 3 个可点击的图像并制作UI 快速且响应迅速,没有延迟和内存问题。探索使用 listview 进行此操作,以便我可以获得 viewcell 重用功能??...

在此处输入图像描述

无论如何,我通过 BindingContext 将此对象传递给自定义视图单元格。使用元组时,图像显示了一些东西。但是,如果我使用列表项,则不会。

我不明白为什么它会显示一个而不显示另一个 - 元组和列表同时填充并保存信息?

上述方法有效,但当我将图像绑定换成通过以下设置时无效:

这是在我将数据填充到视单元后绑定到视单元的类。如您所见,我使用的是 ObservableCollection,但它与 List 的行为相同......似乎只有一个元组有效。现在很好,但是如果我需要使用枚举方法怎么办:(

0 投票
1 回答
1271 浏览

listview - Xamarin.Forms 在 ListView 的 ViewCell 中获取 ViewModel 作为 BindingContext

DataTemplateSelector在 FlowListView 中添加(基本相同ListView)。

我使用此代码获取绑定的单元格。

但我想在与 in 绑定时使用一些ViewModel变量。我尝试了这段代码,但没有工作。ContentViewDataTemplateSelector

我怎样才能得到一个可变的ViewModelin DataTemplateSellector

0 投票
2 回答
5363 浏览

xamarin.forms - Xamarin 表单 - 在页面和视图之间传递数据

我有一个 xamarin 表单应用程序。有 2 个带有数据的类,其中一页正在填充数据。

问题是:我正在创建新视图,它应该使用来自两个类的数据。

我熟悉的唯一方法是将一个类设置为bindingContext在页面之间传递数据,并且它与ONE类一起工作正常,因为显然不能2 bindingContext同时存在。

例子:

1st class(所有班级都在上一页填写。接受他们已填写)

二等

新观点:

也许不需要绑定上下文,因为我只是传递参数,而不是在视图中更改它们?我想解决方案可能很简单,我想不通....

0 投票
2 回答
322 浏览

binding - aurelia bindingcontext 被父级覆盖

下面回答

我有一个 Aurelia bindingcontext 被父组件替换的问题。

我有一个第一个组件,它有一个绑定在其视图中的sourceItem属性:

这显示了正确的值“父名”..

该组件有一个路由器视图,其中创建了另一个组件。我可以看到这个子组件的创建没有问题。问题是这个子组件还有一个sourceItem属性,它以同样的方式绑定在它的视图中。

应该显示值“子名称”,但尽管我可以看到第二个sourceItem被正确创建,但视图显示父绑定上下文的值:“父名称”

如果我更改其中一个sourceItem的名称(例如更改为sourceItem1),一切正常。知道我是否犯了一些错误或者某处是否挂着错误?

非常感谢!

编辑更多信息 我注意到,当导航到子路线时,我遇到了问题。但是当我在浏览器栏中输入完整的 URL 并加载页面时,绑定工作正常。当我检查 bindingContext 和 overrideContext (在 bind() 方法中)时,结果完全相同。所以看起来这可能是一个时间问题......

0 投票
1 回答
1064 浏览

xaml - Xamarin 形成水平列表视图,显示来自 ObservableCollection 的图像

我想在我的内容页面中显示我一直在水平视图中拍摄的照片的图像/缩略图。我已将图像路径作为字符串存储在 ObservableCollection 中。在 XAML 和 PCL 中执行此操作的最佳方法是什么。如果屏幕上显示 3 个或其他图像会很好,如果没有添加图像或字符串为空,则为标准图像,并将这些图像放在滚动视图或列表视图中,以便可以显示 ObservableCollection 中的所有图像.

也许是这样的

/奥利弗

0 投票
2 回答
573 浏览

knockout.js - 使用敲除将文本值与 html 元素绑定未在浏览器中显示

我是 Knockout js 的新手。请帮助我了解问题出在哪里。我处于非常关键的交货计划中,无法弄清楚问题出在哪里。

以下是视图模型

现在的html

直到此时数据绑定成功发生在下一个html div中,同一级别的数据没有显示在浏览器中,

如果我发布的代码量过多,请原谅我,但除非我准确地展示我的代码,否则我无法理解如何传达问题。

你能指导我在哪里缺少什么吗!

0 投票
0 回答
432 浏览

c# - 同一页面上的多个 bindingContext

我将 listview 与 headerTemplate 一起使用。我需要创建一个可绑定属性来将文本添加到我的模板中。

所以我在我的标题模板“MyMenuHeader”中创建了一个可绑定属性:

在我的列表视图中,我尝试使用“设置值”设置此属性:

但我的属性已设置但从未显示在标签中。

此致,

编辑:我有一个 bindableproperty.create 的新参数

这是这个函数,它在属性更改时修改标签的值:

这是工作,但只有一种方式。视图模型-> 视图单元。所以当我设置值时。当我试图在改变时获得价值时,我没有信息。

0 投票
1 回答
1711 浏览

binding - 在 Xamarin 表单中与 BasePage 绑定

我正在使用 FreshMVVM 框架实现 Xamarin 应用程序,并且我想使用 BasePage 在页面之间共享一些代码。问题是,当我需要在 MainPage.xaml 中绑定一些属性时,我必须以这种方式指定Source以使其工作:Text="{Binding Title, Source={x:Reference mainPage}}"。否则没有绑定不起作用。好的,我明白了,但这是正确的方法吗?有没有其他方法可以达到同样的效果?当我在页面中有大量绑定时怎么办?例如,是否有可能在上层“设置” Source,因为在我看来,为每个 Binding 设置相同的 Source 非常烦人。

BasePage.xaml

BasePage.xaml.cs

主页.xaml

MainPage.xaml.cs