mvvm 相关问题

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

Android Clean Architecture View Model 实现 View 的回调

我刚刚处理 Android 应用程序和 MVVM 中的干净架构。 我听说你不应该将 ViewModel 直接传递到屏幕(我使用 Jetpack Compose),而应该将其状态和每个 ca...

回答 1 投票 0

无法将项目添加到房间数据库

由于某种原因,我无法将项目添加到房间数据库中,我的 Daos 的其余部分工作正常,但似乎 @Upsert 不行(显然我在某个地方搞砸了)。我在“应用程序检查&q...

回答 1 投票 0

我的命令KeyGesture仅在我单击按钮后才起作用

我有一个“打开项目”按钮,单击该按钮会打开一个文件对话框并允许用户选择一个文件。我添加了一个命令,以便用户还可以使用“Ctrl + O”来选择文件......

回答 1 投票 0

如何从 WPF 中的 ViewModel 启动故事板动画?

我一直在尝试实现菜单更改到另一个菜单之间的转换。我使用 WPF .Net 8 和 Caliburn Micro 进行 MVVM。 所以我在 MainView.xaml 中创建了故事板动画...

回答 1 投票 0

将列表<Model>转换为ObservableCollection<ViewModel>

我对 MVVM 实现相当陌生。这可能听起来像是一个重复的问题,但我找不到任何东西可以帮助我更好地理解我的基础知识......

回答 2 投票 0

WPF - 使用 ContextMenu、MVVM 和 Command 将 ListView 的项目单元格文本复制到剪贴板

我试图实现一个非常简单的任务:使用右键单击上下文菜单将 ListView 单元格的文本复制到剪贴板,但该任务在 WPF 中似乎非常复杂。我读过几个主题...

回答 1 投票 0

android 在设备旋转时保持标签状态

我正在构建具有片段的 Android 应用程序,并且该应用程序使用 MVVM 设计模式。 每个片段代表一个足球联赛标题和图标 这些选项卡根据 API 调用动态添加。

回答 1 投票 0

使用 MVVM CommunityToolkit 可视化控件上的 UI 验证错误

我正在尝试使用 CommunityToolkit 中的 ObservableValidator 来实现 UI 验证,以突出显示控件并在出现错误消息时显示它们。从文档中我只能找到如何

回答 1 投票 0

异步和 SwiftUi 视图

有人可以帮我解决这个问题吗? .navigationDestination(for: User.self, 目的地: { user in 让 chat = Task { 尝试等待 viewModel.createChat(currentUserId: currentUser!.id,

回答 1 投票 0

变量改变时变量值的显示不改变(Jetpack Compose Android Studio)

应用程序使用mvvm和jetpack compose,屏幕(View,compose)使用以下代码显示是否已获得权限: val 上下文 = LocalContext.current 通过 remem 访问 val...

回答 1 投票 0

在 WPF MVVM 应用程序中使用依赖项注入处理对用户可选择文件的数据访问的正确方法是什么?

考虑以下情况: MVVM 桌面 GUI 应用程序,用户可以在其中创建/编辑“项目”。 想象一个像 Visual Studio 解决方案这样的项目:它是一个文件(当前是......

回答 1 投票 0

dataContext 有问题,它没有在数据网格中显示

看来我的dataContext有问题。假设我有一个由实体框架以数据库优先方法生成的类 tblPerson。 像这样的东西: 公共部分类 tblPerson ...

回答 1 投票 0

在android中的服务中访问viewModel

我们如何在服务中初始化viewModel。 在片段中,我们使用 Kotlin 委托“by ActivityViewModels”来完成此操作。 或者我们可以使用 ViewModelProvider().get 来完成。 但据我...

回答 3 投票 0

MVVM:ViewModel逻辑需要来自数据库的信息,但是如何等待数据?

我是 MVVM 新手,正在尝试弄清楚如何组织我的应用程序。我制作了一个简化的登录应用程序来帮助解决问题。 我将应用程序分为几层:Activity -> ViewModel -> Reposit...

回答 2 投票 0

如何进行多个异步网络调用并一次更新插入它们?

我有一个采用 MVVM 架构的应用程序。 DB 是唯一的事实来源。如果数据过时,我想通过从网络获取最新信息来刷新记录。 我必须制作一个单独的网络...

回答 1 投票 0

通过底部表单中的参数过滤.NET MAUI MVVM中collectionView的数据

我正在过滤一个从 ObservableCollection 获取数据的 collectionView。逻辑位于 ViewModel 类中。我从 HTTP 请求获取 ObservableCollection 的数据,之后...

回答 1 投票 0

当其中一个属性是通过 API 调用获得的另外两个属性计算出来时,如何填充模型属性?

[已解决] 我没有将反向地理代码视为异步函数,从而导致计时问题和数据无法正确填充。使用 async wait 解决了这个问题。 解决方案: func getCurrentWeat...

回答 1 投票 0

通过 Jetpack Compose 和 MVVM 访问数据源中 Android 上的本地文件

使用 Jetpack Compose 访问 MVVM 设置的数据源类中的应用程序上下文的最常见或推荐方法是什么? 具体来说,我有以下设置: 视图通过...

回答 1 投票 0

在 WPF 中切换视图时中止 API 调用

我的 WPF 应用程序顶部有一个带有按钮的栏,允许用户在屏幕之间切换。 XAML: // 费用调查按钮 我的 WPF 应用程序顶部有一个带有按钮的栏,允许用户在屏幕之间切换。 XAML: // FEE SURVEY BUTTON <Menu:Btn Command="{Binding FeeSurveyCommand}" IsChecked="{Binding NavBar.FeeSurvey}" Style="{StaticResource NavButton}"> </Menu:Btn> // PRACTICE SNAPSHOT BUTTON <Menu:Btn Command="{Binding PracticeSnapshotCommand}" IsChecked="{Binding NavBar.PracticeSnapshot}" Style="{StaticResource NavButton}"> </Menu:Btn> // CONTENTS which dynamically changes when users click on the buttons <ContentControl x:Name="Pages" Grid.Column="1" Margin="25,0" Content="{Binding CurrentView}" /> 视图模型: private object _currentView; public object CurrentView { get { return _currentView; } set { _currentView = value; OnPropertyChanged(); } } public ICommand FeeSurveyCommand { get; set; } public ICommand PracticeSnapshotCommand { get; set; } private void FeeSurvey(object obj) { CurrentView = new FeeSurveyVM(); } private void PracticeSnapshot(object obj) { CurrentView = new PracticeSnapshotVM(); } // CONSTRUCTOR public MainViewVM() { FeeSurveyCommand = new RelayCommand(FeeSurvey); PracticeSnapshotCommand = new RelayCommand(PracticeSnapshot); } 因此,当用户单击按钮时,它将创建视图模型的实例(例如 FeeSurveyVM 或 PracticeSnapshotVM)。每个视图模型都与一个视图相关联。渲染新视图时,会调用多个 API。我遇到的问题是当用户切换视图时,API 调用不会中止。假设有人在这些视图之间来回切换,如果 API 调用出现错误(例如 404、400、500 错误),即使我已切换到,也会显示一堆先前访问过的视图的错误消息另一种观点。当视图发生变化时,有没有办法取消/中止这些 API 调用?我一直在寻找解决方案,但没有运气。 这看起来更像是设计错误。您可以尝试这些选项: 防止显示来自用户必须交互的 API 的错误消息,例如通过弹出窗口/消息框。只需添加一个带有输出的 TextBox/RichTextBox 控件,这样用户就会意识到错误,但不会因为弹出窗口而感到沮丧。 您可以禁用允许用户在视图之间切换的 UI 控件,直到 API 调用完成。最好在 API 调用过程中禁用整个视图。显示进度条或通知用户 API 调用期间发生的情况 CancellationTokenSource 应该取消执行 API 调用的异步任务,而不是那些已经调用的任务。因此,在这种情况下用户将观察到错误消息。注意你的设计。 UI 和逻辑。

回答 1 投票 0

MVVM社区工具包KeyUp活动

有人可以解释一下如何在视图模型中获取 KeyUp 事件吗? 我已经尝试过这个: 在我看来: 有人可以解释一下如何在视图模型中获取 KeyUp 事件吗? 我已经尝试过这个: 在我看来: <TextBox .....> <i:Interaction.Triggers> <i:EventTrigger EventName="KeyUp"> <ei:CallMethodAction TargetObject="{Binding}" MethodName="Search"/> </i:EventTrigger> </i:Interaction.Triggers> </TextBox> 在我看来模型: [RelayCommand] private void Search() { // .... } 谢谢你。 我收到错误消息,在我的视图模型上找不到具有正确签名的方法。 我也尝试过 [RelayCommand] private void Search(KeyEventArgs) [RelayCommand] private void Search(EventArgs) [RelayCommand] private void Search(object) 您绑定的命令/方法应该是public。 public void Search() { ... }

回答 1 投票 0

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