问题标签 [avalonia]

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

xaml - Avalonia 中的 Resource.xaml

我正在使用 avalonia 创建一个应用程序,由于可重用性,该应用程序在另一个程序集中有一些 UI 内容。在这个额外的程序集中,我想要一个 Resource.xml 文件,它被应用程序项目和其他项目引用。它包含样式等。

内容:

错误:

我究竟做错了什么?.csproj 文件中是否有一些必要的条目?

0 投票
1 回答
2489 浏览

c# - 如何通过 Avalonia 0.8.3 在 Visual Studio 2019 中成功使用 DataGrid 控件

我使用 Avalonia MVVM 应用程序模板在 Visual Studio 2019 中启动了一个全新的项目。我已经包含来自 NuGet 的 Avalonia、Avalonia.Desktop、Avalonia.Controls.DataGrid 和 Avalonia.ReactiveUI 包,并将它们全部更新到版本 0.8.3。我尝试在表单上放置的第一个控件是 DataGrid,它由一个简单的 PersonModel 类提供支持。

每次我尝试运行该程序时,都会出现错误。这实际上是我尝试使用 Avalonia 的第一个项目,而且我对 WPF 或 UWP 的经验很少,所以我完全迷失了。请帮我弄清楚如何在我的表单上获取 DataGrid。

以下是我对任何东西所做的唯一更改。其他一切都完全按照模板布局,直到我尝试添加 DataGrid。

人模型.cs

MainWindowViewModel.cs

应用程序.xaml:

主窗口.xaml

引发的异常是: System.IO.FileNotFoundException: '找不到资源 avares://Avalonia.Controls.DataGrid/Themes/Default.xaml。'

这看起来很简单,但是在查看了 GitHub 上的源代码并查看了有问题的文件后,我不确定在哪里寻找以确保它在本地存在,或者这是否对我有帮助。

从 App.xaml 中删除该行会导致: Portable.Xaml.XamlObjectWriterException: 'Cannot create unknown type '{ https://github.com/avaloniaui }DataGrid'。

0 投票
0 回答
1345 浏览

c# - 如何在 C# .net Core 跨平台中获取 USB 设备的详细信息

我正在使用 System.Management 库开发 Avalonia 框架和 .net core 3.0,以在 pc 上连接 USB 设备详细信息。它适用于窗户。但是当我在 mac 和 Linux 上测试时,应用程序会抛出 PlatformNotSupported Exception 并说 System.Management 只能在 windows 平台上运行。所以任何人都可以建议我替代选项或任何配置,以便我可以解决这个问题。

0 投票
1 回答
4114 浏览

.net - Avalonia 如何开发跨平台应用程序?

我是一名 WPF 开发人员。我们的团队正在寻找一个好的跨平台解决方案来替代使用 WPF 开发的旧桌面产品。我们最近发现 Avalonia 可能是很好的方法之一,但似乎没有很多演示案例或深入的见解。只有一个好处是https://www.reddit.com/r/csharp/comments/dgfxbl/my_experience_developing_crossplatform_app/

请分享您的经验,非常感谢。

我们想知道:

  1. 跨平台性能。
  2. Avalonia 开发的应用稳定性
  3. PRO 和 CON 到其他跨平台解决方案,如 JAVA、QT、WEB 等。
0 投票
0 回答
341 浏览

wpf - DevExpress WPF 控件库是否与 .NetCore 中的 AvaloniaUI 一起使用?

我正在努力跟上最新版本的 AvaloniaUI(Avalonia 0.9.0 版本)。我们有一个使用 .Net Core 框架构建的 WPF 应用程序。我们一直在广泛使用 DevExpress WPF 控件库。

DevExpress WPFlibraries 是否与 AvaloniaUI 框架一起使用?

谢谢,约翰B

0 投票
1 回答
1651 浏览

c# - Avalonia Ui 将 UserControl 放入另一个

我需要执行以下代码:

在这段代码中,我需要在另一个 UserControl 上放置一个菜单,但该菜单位于不同的 UserControl 中(但是,它可以是任何东西)。

当代码在正常的 WPF 中时,我可以做到。Avalonia 可以做到这一点吗?

0 投票
1 回答
477 浏览

c# - 如何将来自 TextBox 的 UserInput 存储在变量中 - Avalonia UI、C#

我想问你,我如何存储来自用户输入的值?

当用户输入他的用户名时,我想把它存储在一个变量中。

0 投票
2 回答
376 浏览

c# - ReactiveUI 连接 Observable CanExecute 和 IsExecuting 属性

如果 CleanCommand 正在执行,则 SearchCommand 将处于非活动状态。如果 SearchCommand 正在执行,则 CleanCommand 将处于非活动状态。

条码是

在构造函数中

在班上

我通过 *IsExecuting.ToProperty() 获得进程状态

我得到带有条形码等属性的值。

我应该使用WhenAny* 方法还是可以这样做?

0 投票
1 回答
544 浏览

avaloniaui - ViewLocator 生成的视图在何处以及如何分配其 DataContexts(在 Avalonia 的 Todo 教程应用程序中)?

在完成的 Avalonia 教程 Todo 应用程序中 --- TodoListView 和 AddItemView 在哪里以及如何获取它们的 DataContexts 以分别等于 TodoListViewModel 和 AddItemViewModel ???
我的意思是他们的父控件 MainWindow 的 DataContext 是一个 MainWindowViewModel 实例(在 App.xaml.cs 文件中分配)---而 MainWindow 的 Content 属性绑定到 MainWindowViewModel 的 Content 属性(在执行期间它确实获得了视图模型的分配实例)。我只是无法追踪 TodoListView 和 AddItemView 获取其 DataContexts 的来源。他们是否在以下情况下得到它:

  1. 由 ViewLocator 在运行时创建?-- 但这是不可能的,因为在 ViewLocator 返回 View 实例之前,新实例化的 View 的 DataContext 属性仍然为 NULL -- 如已完成应用程序中以下代码的输出所示(if 块中的代码由我产生所需的输出):
  1. 或者他们得到父 Window 分配的 DataContext ?--- 但是父窗口自己的 DataContext 是 MainWindowViewModel ----- 我们如何从 MainWindowViewModel 到 TodoListViewModel 或 AddItemViewModel ???

简而言之,我不清楚在运行时通过 ViewLocator 生成的视图在哪里分配了它们的 DataContext 属性。


总结一下我从答案和一些搜索和游戏中理解的内容:


如果 ContentControl(在本例中为 Window)的 Content 属性是 Control,则 Control 只需从父 ContentControl 继承 DataContext。但是如果ContentControl的Content属性是non-Control,那么ContentControl的ContentPresenter首先会为non-Control找到一个数据模板,这样就可以生成一个子View,然后将自己的DataContext设置为non-Control。这个新分配的 DataContext 然后被新生成的子 View 继承。呸呸呸!

0 投票
1 回答
1739 浏览

c# - Avalonia UI C# XAML WPF - 根据列值调整数据网格行颜色

如果第 4 列的值为“HIGH”,我想将每一行的颜色更改为红色。