mvvm 相关问题

Model-View-ViewModel(MVVM)是一种架构设计模式,用于实现用户界面,通过其表示逻辑(其ViewModel)将UI(View)与其数据(Model)分开。

将项目转换为字符串

它不会在选择器中显示类别,因为在InitializeCategories中我执行了ItemCategories.Add(category);,要显示它我必须执行category.Text,但是后来它告诉我...

回答 1 投票 0

如何使用由 MappingName 填充的 SFDataGrid 将一列绑定到另一列

我试图根据同一行中另一列的布尔值来调整一列中的小数位数。 这是 XAML 我试图根据同一行中另一列的布尔值来调整一列中的小数位数。 这是XAML <syncf:GridCheckBoxColumn HeaderText="Headeer1" MappingName="OnlyIntegerQuantities" Width="120" AllowEditing="True"/> <syncf:GridNumericColumn HeaderText="Header2" MappingName="Quantity" Width="120" AllowEditing="True" Decimals="{Binding DataContext.OnlyIntegerQuantities,RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=syncf:VirtualizingCellsControl}, Converter={StaticResource BooleanToDecimalConverter}}" ValidationMode="Decimal"/> 如果我绑定到 ViewModel 中的任何属性,它们工作正常,但我无法绑定到填充该行的模型中的属性。 我尝试绑定到 CellsControl 的相对源,但不起作用。 我正在使用 ObservableCollection 来填充数据网格的 ItemsSource。 使用GridTemplateColumn代替GridNumericColumn并使用内部的TextBlock定义模板。使用多值转换器的多重绑定设置 Text 属性。 <syncf:GridTemplateColumn HeaderText="Header2" MappingName="Quantity" Width="120" AllowEditing="True"> <syncf:GridTemplateColumn.CellTemplate> <DataTemplate> <TextBlock> <TextBlock.Style> <Style TargetType="TextBlock"> <Setter Property="Text"> <Setter.Value> <MultiBinding Converter="{StaticResource BooleanToDecimalConverter}"> <Binding Path="Quantity"/> <Binding Path="OnlyIntegerQuantities"/> </MultiBinding> </Setter.Value> </Setter> </Style> </TextBlock.Style> </TextBlock> </DataTemplate> </syncf:GridTemplateColumn.CellTemplate> </syncf:GridTemplateColumn> 转换器 public class BooleanToDecimalConverter : IMultiValueConverter { public object Convert(object[] values, Type targetType, object parameter, CultureInfo culture) { var quantity = (double)values[0]; var onlyQuantityInteger = (bool)values[1]; if (onlyQuantityInteger) { return String.Format("{0:0}", quantity); } else { return (quantity).ToString(); } } public object[] ConvertBack(object value, Type[] targetTypes, object parameter, CultureInfo culture) { throw new NotImplementedException(); } }

回答 1 投票 0

如何绑定列表视图的组合框的值,并将其包含在 wpf mvvm 视图模型中

我有两堂课: 公共类订单:ObservableCollection { 公共秩序() { 添加(“第一个”); 添加(“第二个”); 添加(“第三个”); ...

回答 1 投票 0

是否可以使用 MVVM 构建 Wix/Wix# UI?

我目前正在阅读使用 Wix# 构建自定义 UI,但由于我对 (WPF) MVVM 的经验比 WinForms 的经验更多,所以我想知道是否可以使用它。 可以吗?

回答 1 投票 0

是否可以从 ObservableCollection 中隐藏 elementis ?毛伊岛网络

我正在使用 MVVM 和 Ms Toolkit。 我正在 CollectionView 中显示一个集合..但我(如果可能)想隐藏“已删除项目”(由模型上的已删除标志设置)。 这就是为什么我使用 g...

回答 1 投票 0

“System.Windows.Data.Binding”类型的对象无法转换为“System.String”类型

我想知道是否有人可以帮忙。我已经在这个问题上敲了半天了,我一定是做错了什么。我有一个带有许多依赖属性的自定义控件。 [

回答 3 投票 0

Xamarin Forms ListView 未从 ObservableCollection 更新

我的 XAML 文件的 ListView 正在填充一个 ViewModel,该 ViewModel 具有来自服务的 ObservableCollection,但 ListView 未显示信息。我已经检查过服务是否正常

回答 5 投票 0

使用MVVM Toolkit缩短串口WPF .NET Core代码,多线程问题

在我的第一个wpf(.NET core)代码中,我有类: 公共抽象类 ViewModelBase :INotifyPropertyChanged、IDisposable 我开始在 MainViewModel 中缩短此代码(工作正常): 公开课

回答 1 投票 0

授予权限后更新 UI

我学习kotlin和协程;我希望应用程序在我授予位置权限后立即缩放我的位置,但我需要关闭应用程序并重新启动它才能缩放... 有人可以吗...

回答 1 投票 0

我使用的列表未显示在页面 WPF 中

我在模型中有一个列表,我在视图中使用它来添加内容或从视图模型中删除其中的内容。然后,通常我可以转到其他页面并在组合框中查看列表。但现在不显示了...

回答 1 投票 0

我想在我的 Canvas 用户 MVVM 模型上创建一个用户控件

我有问题.. 我想尝试在画布上创建一个用户控件 但这不起作用,Visual Studio 检查此代码没有任何错误 我有问题.. 我想尝试在画布上制作用户控件 但是 Visual Studio 检查此代码没有任何错误是行不通的 <Grid Grid.Row="1" Grid.Column="1" Background="DarkGray"> <ItemsControl ItemsSource="{Binding Shelfs}"> <ItemsControl.ItemsPanel> <ItemsPanelTemplate> <Canvas/> </ItemsPanelTemplate> </ItemsControl.ItemsPanel> <ItemsControl.ItemContainerStyle> <Style TargetType="ContentPresenter"> <Setter Property="Canvas.Left" Value="{Binding X}"/> <Setter Property="Canvas.Top" Value="{Binding Y}"/> </Style> </ItemsControl.ItemContainerStyle> <ItemsControl.ItemTemplate> <DataTemplate> <ContentControl> <ContentControl.Style> <Style TargetType="ContentControl"> <Style.Triggers> <!-- Assuming UCShelf is the default type --> <DataTrigger Binding="{Binding Type}" Value="Port"> <Setter Property="ContentTemplate"> <Setter.Value> <DataTemplate> <UC:UCPort Width="{Binding Width}" Height="{Binding Height}" Visibility="Visible"/> </DataTemplate> </Setter.Value> </Setter> </DataTrigger> <DataTrigger Binding="{Binding Type}" Value="Shelf"> <Setter Property="ContentTemplate"> <Setter.Value> <DataTemplate> <UC:UCShelf Width="{Binding Width}" Height="{Binding Height}" Visibility="Visible"/> </DataTemplate> </Setter.Value> </Setter> </DataTrigger> </Style.Triggers> </Style> </ContentControl.Style> </ContentControl> </DataTemplate> </ItemsControl.ItemTemplate> </ItemsControl> </Grid> This is my Canvas in MainWindow private ObservableCollection<Shelf> _shelfs; public IEnumerable<Shelf> Shelfs => _shelfs; public MainViewModel() { _shelfs = new ObservableCollection<Shelf>(); } private ICommand addShelfCommand; public ICommand AddShelfCommand { get { return (this.addShelfCommand) ?? (this.addShelfCommand = new RelayCommand(AddShelf)); } } public event PropertyChangedEventHandler PropertyChanged; protected virtual void OnPropertyChanged(string propertyName) { PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName)); } private void AddShelf() { if(_shelfs == null) { _shelfs = new ObservableCollection<Shelf>(); } _shelfs.Add(new Shelf {X = (_shelfs.Count * 40), Y = 10, Width = 30, Height = 30 }); OnPropertyChanged(nameof(Shelfs)); MessageBox.Show("Total Shelf = " + _shelfs.Count); } `这是我的 MainViewModel' 所以..我错过了什么?' '我单击按钮 AddShelfCommand、AddPortCommand 但没有反应 AddshelfCommand 和 AddPortCommand 正在工作,但我无法检查 UI` Left和Top是Canvas'附加属性,不是普通属性。因此,您必须使用特殊语法才能正确绑定它们: <ItemsControl.ItemContainerStyle> <Style TargetType="ContentPresenter"> <Setter Property="(Canvas.Left)" Value="{Binding X}"/> <Setter Property="(Canvas.Top)" Value="{Binding Y}"/> </Style> </ItemsControl.ItemContainerStyle> 注意包裹 Canvas.Left 和 Canvas.Top 路径的括号。

回答 1 投票 0

通知 ViewModel 中新元素的 BindingContext

我正在尝试使用 INotifyPropertyChanged 通知 BindingContext 新元素已添加到 ListView 并且应该刷新。 目前我无法让它工作,所以我只是设置...

回答 1 投票 0

当我将产品添加到购物车时,它什么也不显示

在我的 MenuFragment 中,我显示可以添加到购物车的产品,当我单击日志中的任何产品时,我看到该产品已添加到列表中并且列表已更新,但是当我转到

回答 1 投票 0

WPF DataGrid - 如何从 ViewModel 中选择位置 [0,0] 的单元格

我有一个SelectionMode =“Single”SelectionUnit =“Cell”的DataGrid。 目前,当显示 DataGrid 时,最初不会选择任何单元格。 我有两个场景需要解决...

回答 1 投票 0

参数类型必须是@Entity注解的类或者它的集合/数组.kotlin.coroutines.Continuation<?super kotlin.Unit>$completion)

整个错误是: 错误:参数的类型必须是用@Entity注释的类或其集合/数组。 kotlin.coroutines.Continuation $completion); 我...

回答 1 投票 0

如何在wpf中使用MVVM模式进行框架导航(相同视图,不同VM)?

我正在开发一个爬虫程序,我希望它有与浏览器类似的体验,即我可以后退/前进,我想使用 Frame 控件,但我不知道该怎么做,我的观点是...

回答 1 投票 0

如何在已经实现了 INotifyPropertyChanged 本身的类中拥有 [ObservableProperty]?

我只是想使用 [ObservableProperty] 来表示相应的字段/属性。 然而,当我使用 MvvmCross (什么不那么重要)时,我的 ViewModel 已经从基类继承了......

回答 1 投票 0

在 App.xaml.cs 之外的 WPF 中设置 DataContext

我有一个显示 LoginView、SignUpView 和 StoreView 的 MainWindow。 DataContext 在这里工作正常。 在 StoreView 内部,它应该显示几个其他视图,默认为 Ho...

回答 1 投票 0

如何将 MainViewModel 的属性传递给其他 ViewModel,并在 MVVM 应用程序中发生更改时通知它

我是编程新手,尤其是 MVVM 框架。我想使用 MVVM 框架制作 WPF 应用程序,但我遇到了传递

回答 1 投票 0

在 WinUI/WPF 应用程序中更改对象时自动更新数据库

我有一个名为 Clients 的 ObservableCollection,其中包含一个客户端列表,然后显示在 ListView 中。目前,每当添加新客户端时,列表视图都会自动更新......

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.