问题标签 [bindableproperty]

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

c# - 获取控件中 ViewModel 中使用的 BindableProperty 的值?

我有一个控件,我在其中定义了一个BindableProperty类型bool。这BindableProperty由以下人员使用ViewModel:如何ViewModel从我的控件中获取此属性的值?

例如,在ViewModelI assign itfalse中,在控件中我想获取它的值,如果它是 false,它会做一些事情。

我的代码

自定义控件 xaml cs:

主页.xaml:

主页.cs:

ViewModel.xaml.cs:

我不确定这是否真的可以做到,如果没有,有没有办法调用在 ViewModel 中的控件上创建的方法?

0 投票
1 回答
75 浏览

c# - 我可以将 Xaml 组合

我有 XAML 代码,用于设置这样的框架和框架标题:

因为ContentFrame我在这里使用 C# 模板:

有没有一种方法可以将标题的设置组合到ContentFrame类中,以便可以通过以下方式实现相同的目标:

0 投票
0 回答
28 浏览

c# - 如何从 XAML local:imageresource 实现自定义 BindableProperty

(编辑:清晰度)

我想要一个BindableProperty最终显示图像的自定义控件。在我的实现中(下面的摘录),该属性Source被分配了值

而不是类似于文件路径的东西。

我的 XAML 具有以下内容:

在 StretchImage.cs 我有:

我不明白什么?

0 投票
2 回答
91 浏览

c# - 暴露的可绑定属性未正确绑定

我制作的自定义视图遇到了这个问题,该视图将复选框与文本连接起来,并允许您点击整个视图以勾选复选框。但是当我从复选框绑定到暴露的绑定时,它似乎对更改没有反应。我显然不理解某些东西,并希望这里的某个人可以看到我缺少的那个明显的东西。一个普通的复选框工作得很好。

我查看了现场的几个解决方案,并尝试了一些我发现的东西,但可惜,没有骰子。

xml:

CS

编辑1:我发现如果我点击复选框本身它会中断,但点击屏幕的任何其他部分都可以。

0 投票
0 回答
287 浏览

c# - 从 ContentView(子视图)获取属性值到 ContentPage(父)

作为一个经验不足的Xamarin开发人员,我试图从ContentView我的父页面 () 中的子页面 () 中检索属性值ContentPage。我可以找到一些如何从父页面获取/设置值到子页面的示例,但反之则不然。

更多细节:

在我的ContentPage我有一个CarouselView,这CarouselView有一个DataTemplate包含一个ContentView,这个 ContentView 里面还有一个 CarouselView,它有 2 层/2 个垂直轮播项目。

当 CarouselView 在 ContentView(子页面)内的位置,改变位置到第二项时,IndicatorView在父页面中的 应该设置为invisible

我对使用 a 的经验并不多,BindableProperty但我认为这是要走的路。我现在设置如下:

父页面/内容页面:

子页面/内容视图(XAML):

内容视图(C#/.cs):

当内部轮播视图位置发生变化时,bindable property应设置,此属性应在父页面中使用转换器设置指示器视图可见/不可见(位置 0 = 可见,位置 1 = 不可见)。对于某些人来说,可能是一个非常明显的原因,上面的方法不起作用。

可见性转换器:

更新*

我还尝试在我的 ViewModel 中使用绑定作为位置属性,虽然绑定值发生了变化,但我无法在父页面中访问它,没有任何反应,转换器没有被触发),我删除了可绑定属性。

新的内容页面 XAML(父轮播):

子页面的 XAML:

视图模型

0 投票
1 回答
135 浏览

xamarin - 在 Xamarin 表单中为 Treeview 创建可绑定属性

我需要在我的 xamarin 表单应用程序中使用 Treeview,但是网络上唯一现有的 TreeView 不是免费的(Syncfusion 和 Telerik)。

所以我发现了这个非常有趣的项目:https ://github.com/AdaptSolutions/Xamarin.Forms-TreeView

我发现的唯一问题是 ItemSource 和 SelectedItem 属性不可绑定,因此我不能在 MVVM 模式上使用它。这给我们带来了我的问题,我怎样才能使它们可绑定。

我尝试遵循此文档:https ://docs.microsoft.com/en-us/xamarin/xamarin-forms/xaml/bindable-properties

但仍然没有。任何人都可以帮我吗?谢谢

更新 :

这是 TreeView 类:

所以我在这里尝试做的是使 RootNodes 以及之后的 SelectedItem 可绑定。

我所做的只是添加这个,认为它应该可以工作,但显然它没有:

更新2:这是它的样子 在此处输入图像描述

希望这可以帮助

0 投票
1 回答
46 浏览

c# - 创建一个自定义 BindableProperty,它采用 XAML 中基础返回类型的自定义定义字符串表示形式

我正在尝试为自BindableProperty定义视图创建一个自定义,该视图在通过 XAML 使用时接收一个字符串,但在内部实现为自定义结构,如下所示:

我最初创建上述属性的本能是声明上述字段并X针对方法中string传入的 XAML生成所需的结构实例MyValuePropertyChanged,但这被认为是不可能的,因为在运行时抛出异常表示此类声明的非法性.

在概要中,我试图复制Xamarin.Forms.GridLength结构的行为,其在 XAML 代码中的字符串表示在通过 getter 和 setter 访问时被转换为所需的结构。

提前致谢。

0 投票
1 回答
108 浏览

xamarin.forms - Xamarin.Forms 可绑定属性

这听起来像是一个愚蠢的问题,但为什么可绑定属性是静态的?

我有这段代码,如果我将可绑定属性设为静态,它就可以正常工作,否则它就不起作用。如果我将此可绑定属性设为静态,这意味着,假设我同时打开了 2 个地图,如果我在其中一个上设置此值,那么这两个地图上的值是否相同?

0 投票
2 回答
665 浏览

c# - Xamarin 表单可绑定属性条目不起作用

我在使用可绑定属性时遇到了一些困难,并且在输入新文本时不会触发 propertyChanged 事件。

我做了一个最小的代码示例:

Xaml 自定义控件:

代码隐藏:

}

消费类 xaml:

消费类代码隐藏:

它很好地绑定了“绑定”值,但是在条目中输入的后续更改不会引发属性更改。

我已经尝试了一些从谷歌搜索中找到的建议,但这应该没问题吧?

更新:好的 - 所以我实际上是通过在自定义视图中添加绑定来工作的:

这真的是这样做的方法吗?我的意思是 - 我只能让它工作,如果绑定在自定义视图中被命名为完全相同,并且消耗部分..

0 投票
1 回答
109 浏览

xaml - 从其 xaml 访问自定义控件的可绑定属性

我想在我的自定义视图中声明一个可绑定属性并将其链接到相应的 viewmodel

我使用 MVVM 模式并希望将 ui 逻辑和数据逻辑彼此分离。所以我将我的状态和其他数据保留在 viewmodel 中,并根据 viewmodel 数据的变化更新我的视图。

这当然应该通过数据绑定来完成。

可以说我得到了以下xaml ...

...后面有这段代码...

...以及这个视图模型和状态枚举:

现在的问题是:

如何将 my 链接viewmodels Status property到 my views Status bindable property