- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个简单的 ViewModel:
public class SampleCollectionViewModel : ReactiveObject
{
public SampleCollectionViewModel()
{
this.Countries = new ReactiveList<Country>();
this.Countries.Add(new Country { Name = "Andora" });
this.Countries.Add(new Country { Name = "Aruba" });
this.Countries.Add(new Country { Name = "Afganistan" });
this.Countries.Add(new Country { Name = "Algeria" });
this.Countries.Add(new Country { Name = "Argentina" });
this.Countries.Add(new Country { Name = "Armenia" });
this.Countries.Add(new Country { Name = "Antigua" });
//CountryNames.AddRange(this.Countries.Select(x => x.Name));
}
public ReactiveList<Country> Countries { get; set; }
//public ReactiveList<string> CountryNames { get; set; }
}
和一个简单的 View :
public partial class SampleCollectionWindow : Window, IViewFor<SampleCollectionViewModel>
{
public SampleCollectionWindow()
{
InitializeComponent();
this.ViewModel = new SampleCollectionViewModel();
this.Bind(ViewModel, vm => vm.Countries, v => v.CountriesListBox.ItemsSource);
}
public SampleCollectionViewModel ViewModel { get; set; }
object IViewFor.ViewModel
{
get { return ViewModel; }
set { ViewModel = (SampleCollectionViewModel)value; }
}
}
当我运行它时,我得到: exception Additional information: Can't two-way convert between ReactiveUI.ReactiveList``1[DemoReactiveUiWpf.SampleCollection.Country] and System.Collections.IEnumerable. To fix this, register a IBindingTypeConverter
如果我改变 this.Bind(ViewModel, vm => vm.Countries, v => v.CountriesListBox.ItemsSource);
到 this.OneWayBind(ViewModel, vm => vm.Countries, v => v.CountriesListBox.ItemsSource);
ListBox 没有任何反应
稍后我将扩展这个简单的演示,以使用命令和异步命令向模型添加新国家/地区。
删除ListBox
中的选定内容/ListView
项目。
尝试 ReactiveUI 提供的过滤、排序和其他有趣的操作。
但目前我还无法进行简单的绑定(bind)...
如何绑定(bind)ListBox
/ListView
至ReactiveList<Country>
并以正确的方式使用ReactiveList + ListBox/ListView进行常见操作?
谢谢!
最佳答案
您绝对不能使用双向绑定(bind)来绑定(bind)到 ItemsSource - 正如错误消息所示,您不能保证有人设置 ListBox.ItemsSource
将使用ReactiveList<Country>
。这适用于我的机器:
this.OneWayBind(ViewModel, x => x.Countries, x => x.countries.ItemsSource);
...nothing happens with ListBox
我想知道您是否没有配置DataTemplate? ReactiveUI 使用 ViewModelViewHost
覆盖默认的 DataTemplates (并且由于您很可能没有为国家/地区注册 View ,因此它会失败)。
更新:这是我绑定(bind) SelectedItems 的方法,将其放入 View 中:
this.WhenAnyValue(x => x.countries.SelectedItems)
.Select(list => list.Cast<Country>())
.BindTo(this, x => x.ViewModel.SelectedCountries);
关于reactiveui - 如何将 ReactiveList<SomeObject> 绑定(bind)到 WPF ListBox 或 ListView?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25405394/
这两个表达式等价吗?如果是,你能解释为什么吗? (我是一名java程序员): if(!$someObject) if($someObject!==null) 谢谢 最佳答案 你可以看看 type co
我看到这段代码,找了一段时间,网上找了半天,还是没搞定。 var client = function (){ var engine = { ie: 0,
所以我有两个模型;联系和分组,并通过 NSCoder 归档/取消归档他们的数据。考虑一下: class Contact { var id: Int = default_value va
以下代码: var ResultSet= { 'ResultSetName': "Resultset1", Values: [ { Val1: 1, Val2: 2, Val3: 'SomeN
所以我正在查看一些 Java 代码并偶然发现: List l; 基本上,这个列表接受所有属于某种 SomeObject 的对象 - SomeObject 本身或其继承者。但是根据多态性,它的继承者也可
我想搜索我的代码并将 someObject.ToString() 的所有实例替换为 Convert.ToString(someObject)。 例如,如果我有: var x = someClassIn
这个问题在这里已经有了答案: 关闭 9 年前。 Possible Duplicate: is there a difference between (!object) and (object ==
我经常使用以下方法获取对象键数组: Object.keys(someobject) 我很乐意这样做。我知道 Object 是 Object 构造函数,而 keys() 是它的一个方法,而 keys()
协议(protocol)实现分为三种: 第一个: @protocol FirstProtocol ... @end @property(nonatomic, weak) id delegate; 第二
我们有使用 Spring 框架的 NamedParameterJdbcTemplate 的应用程序执行各种 JDBC 语句。此类中的大多数方法都已重载。例如,update() 的一个版本接受一个 Ma
我尝试复制window.getSelection()至someObject将其存储为对象属性以供将来重用。 我有这个代码: var selection = window.getSelection();
我有一堂这样的课: import javax.annotation.Nullable; public class Nullness { private @Nullable Object som
考虑 ASP.NET Core Web API Controller 方法的以下方法签名: public JsonResult GetById(string id); public async Tas
如何在 C# 4.0 中使用协方差将 IList 转换为 IList,其中 SomeObject 实现 ISomeInterface 我有类似以下内容 IList GetItems; IList it
someObject.$() 是什么意思? 我正在浏览 sapui5 工具包中的 tilecontainer-dbg 文件,发现了这个: var oDomRef = this.$(); or some
我正在查看github上的.net core 2.0代码,以使文章中的某些代码不混淆,并遇到this: public static IMvcBuilder AddRazorPagesOptions(
是否 Class只有一个实例是 SomeObject.class ? 这是一个函数 void f(Class arg) 是否可以只传递 SomeObject.class否则编译时错误? 最佳答案 是的
考虑以下情况: public class A { private String stringA; public String getStringA() { return
我有一个数组 List其中包含日期的升序(以及更多带有信息的字段)。该列表将分组为 List> ,这与我的主题相关。 一个List分组为 List> .在前一种情况下,只包含 1 行。 某些计算发生在
我有 public void setContacts(List contacts) { this.contacts = contacts; } 需要用反射获取这个方法,我试过了 clazz
我是一名优秀的程序员,十分优秀!