问题标签 [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 回答
781 浏览

generics - Xamarin Forms 自定义视图,可绑定的 Observable 集合 throws "Specific Cast Not Valid"

I'm creating a custom view in xamarin Forms with a set of Bindable properties including Bindable observable collections type of my own Models. These observab

I'm creating a custom view in xamarin Forms with a set of Bindable properties including Bindable observable collections type of my own Models. These observable collections serves as data source for custom view and gets updated in realtime. Everything was fine until different types of models added and code refactoring started.

There are few set of Models that custom view supports and any point of time there can be only one observable collection of type any model. Initially I managed with different properties for each type, then to make it more generic I tried handling it with single property. That is when I replaced

In CustomView.cs

ObservableCollection<ModelA> ADataSource ObservableCollection<ModelB> BDataSource

with

ObservableCollection<object> DataSource

In ViewModel I have

ObservableCollection<ModelA> AList

Now when app runs it Custom View throws an error "Specific Cast is not valid" for the generic observable collection. While debugging in Property_Changing event handler I am able to caste the newValue through quick watch to Observable Collection.

How to handle this and make the generic observable collection property support multi type models.

Thanks in Advance


If you want to use ObservableCollection modelbs bindable property in ContentView, then use this custom control in ContentPage, I do one sample that you can take a look:

ContentView:

ContentPage:

0 投票
1 回答
231 浏览

xamarin.forms - ContentView -> 自定义框架绑定不起作用

我复制/编写了一个继承自Frame的类

消费页面定义了这些 BinadableProperties

并像这样使用Circle

唉,可绑定的设置器,因此 AdjustSize(),从未被调用,也没有使用默认值。我最终得到了一个矩形,而不是一个圆圈。BackgroundColorFrame的一个属性,可以绑定并正常工作。

如果我删除 BindableProperty 并留下常规的 INotify 属性

如果我保留InnerRadius绑定,编译器会抱怨

严重性代码描述项目文件行抑制状态错误位置 17:92。未找到“半径”的属性、可绑定属性或事件,或者值和属性之间的类型不匹配。...\组件\CircleProgressView.xaml 17

我可以用硬编码值替换Radius绑定,它运行良好,出现一个圆圈。

常规 C# 类中的 BindableProperty 有什么问题?

0 投票
1 回答
426 浏览

c# - xamarin 表单可绑定属性无法正常工作

我正在尝试创建如下所示的自定义视图 我正在尝试将主页中的集合绑定到自定义视图

但在这里它没有正确绑定。

xmal.cs 文件

我正在 MainPage 中进行绑定,如下所示

我的SummeryDetailModel喜欢

这里它没有将测试值绑定到标签。

我在这里错过了什么?

0 投票
1 回答
220 浏览

c# - 绑定可绑定属性命令在 Xamarin 表单中不起作用

我有一个具有可绑定属性的自定义视图。

我正在尝试在我的主页视图模型中绑定命令。

这是我所做的方式,但绑定不起作用。

我的 .cs 文件如下所示

我需要在我的主页中绑定它,如下所示。

我的视图模型我只是添加一个命令

但我的命令绑定不工作其他绑定是好的。

有什么我做错了吗?

0 投票
0 回答
111 浏览

xamarin.forms - 为什么设置 BindableProperty.DefaultValue 不调用 OnPropertyChanged?

我在继承自的类中使用这样的可绑定属性Xamarin.Forms.ContentView

此外,我正在监听更新内部元素背景颜色的更改:

我刚刚注意到 OnPropertyChanged 没有使用默认值调用。就在我从另一个地方更新它时,XAML 或通过代码。

这是预期的行为吗?如果是,为什么?我应该怎么做?在 XAML 代码中也定义它?

0 投票
1 回答
272 浏览

arrays - 如何从 XAML 初始化 Array 类型的可绑定属性



在一个自定义组件中,我定义了一个 ARRAY 类型的可绑定属性:

我想使用 XAML 文件中的这个组件,因此像这样设置这个属性:

当我启动它时,应用程序在没有消息的情况下崩溃(由于空引用?)。如果在设置器上放置断点,我可以看到它永远不会被调用。
但是......如果我在组件的构造函数中添加一个“内部”初始化,如下所示,setter 被调用两次(来自内部声明和 XAML 文件的数据 - 这是正常的)并且应用程序执行不崩溃。

如果我只将属性分配给 XAML 文件中定义的数组,为什么应用程序会崩溃?XAML 中真正的数组类型是什么?有初始化问题吗?任何想法 ?

非常感谢您的建议

0 投票
1 回答
189 浏览

xaml - Xamarin Forms:无法更新 UI 上的自定义控件

我创建了一个具有水平条的自定义控件,根据我从 API 获得的数量,条中可以有 N 个 boxview,例如,我有一个限制为 20 个控件的控件,我选择了其中的 10 个,因此将有 10 个 boxview橙色,其余 10 来自 20 将是​​黑色我需要更新每个复选框选择的控件,它对我来说工作正常,直到我进入下一个屏幕并在我回到这个屏幕后回到同一个屏幕控制停止更新诡计调试我在我的代码中获取数据,但它没有在 UI 上更新。

我如何在我的代码中使用它

我的自定义控件 XAML

我的自定义控件的 CodeBehind

0 投票
2 回答
454 浏览

c# - Xamarin 表单中的 BindableProperty (List<>)

我的问题如下:我有ContentPage一个ResourceDictionary带有一些 DataTemplates 的我。其中一个模板采用HorseObject(其中包含List<Weight>'s)。我显示了该对象的几个统计信息,但是当我想将变量从Horse对象传递到另一个视图时,如下所示:

代码背后WeightOfHorse

我只是无法传递这些值,我知道它们是可用的,因为我可以将它们显示在一个简单的Collectionview.

我究竟做错了什么?

0 投票
1 回答
71 浏览

xaml - Xamarin Forms 使用反射获取可绑定属性的属性

我想要的是,当值改变时,它应该调用CreateChart()并使用新值。我尝试在 onPropertyChange 方法中调用OnValueChanged具有反射的可绑定属性,但该属性始终为空,并且我没有得到该属性的值Value

xml:

0 投票
0 回答
89 浏览

c# - IValueConverter 中的可绑定属性始终为 Null

我有一个处理布尔值的转换器,并使用它们来选择两个 ImageSource 中的任何一个。我将 ImageSource 定义为转换器中的两个参数,稍后我需要使用 XAML 中的 DynamicRsource 标记扩展来提供这些资源,因此我设计了以下代码

XAML

虽然我可以在属性更改事件中看到每当调用转换方法时都会设置一个新值,但我可以看到两个图像源都是空的。我在这里做错了吗?还是设计上不可能?

请注意,由于应用程序的一些内部原因,我不能使用触发器来执行此操作