问题标签 [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 投票
0 回答
116 浏览

.net - Avalonia 的透明度和点击率

我正在考虑将我在 WPF 中制作的应用程序移植到 Avalonia。

我的第一个要求是启用点击透明性(与<Window Background="{x:Null}" WindowStyle="None" AllowsTransparency="True"WPF 中相同)。

我已经尝试过了,但它看起来不起作用(至少在 Windows 上)。

目标操作系统将是 Windows、macOS 和 Linux。因此,在将它安装到虚拟机或购买新设备之前,我需要知道是否有可能在所有操作系统中都具有该功能。

0 投票
0 回答
25 浏览

c# - 如何让 2 个用户控件访问同一个静态变量?

我想知道是否有办法以某种方式使 UserControls 更改并访问一个变量(在我的情况下是一个 int),如果它们像这样放置在树中。

我想要达到的目标

这两个控件的作用相同:显示游戏列表,如果单击,则转到相应的游戏。我想要一个场景,其中这 2 个控件共享一个从 0 到游戏计数的 int。如果它是 1 或更多 - GameCards 变得不可见,选定的游戏会在 RightBar 上发光。如果为 0 - 未选择任何内容,则游戏卡不会消失。

我尝试了什么

使用另一个 ViewModel 来存储一个 int 和对应的 UserControls 的 ViewModel。不起作用 - 我无法更改GameCards内可点击元素的 DataContext 。

因为我动态地创建了这个元素:

在这里,RPCUser 是一个 ViewModelBase,它使用 WebSockets 从我的服务器获取任何必要的信息,而 GameCardModel 将包含将来解析的信息。

而且我需要更改此属性上的 DataContext 才能访问该变量。另一件事是我相信 ViewModel 不能包含静态元素,因为它们是作为每个 View 的实例创建的。

我对 WPF 世界比较陌生,任何帮助将不胜感激。

0 投票
0 回答
65 浏览

c# - 如何将 byte[] 转换为 StreamGeometry

我在转换byte []StreamGeometry.

Styles.xaml 中存储了各种图标:

控制.xaml:

模板图像转换器.cs:

我不能使用 Image 标签的原因是不是每个Scripting.Template对象都有一个DisplayIcon != null属性。如果是null,那么我必须从 IconStyles.xaml 中获取基本图标。或者,我可以添加<Image>Control.xaml为它制作一个特殊的转换器 if Scripting.Template.DisplayIcon! = null,但这种解决方案似乎很没有吸引力。

0 投票
0 回答
41 浏览

c# - 在 Avalonia 中禁用鼠标右键

我有基于 Avalonia UI 的应用程序。应用程序具有垂直选项卡作为列表框项目,您可以通过单击鼠标左键或右键来选择它们。问题是如何禁用鼠标右键来选择此选项卡(列表框项)?

0 投票
1 回答
115 浏览

c# - Avalonia:如何以编程方式将控件添加到 UserControl

我可以在 Grid 上很好地做到这一点,Grid.Children.Add(...) 但我不知道如何以编程方式将控件添加到 UserControl。

0 投票
1 回答
258 浏览

avaloniaui - Avalonia 如何创建自定义弹出窗口

先做一点解释:

这是Popup 元素的源代码

这是使用 Popup DatePicker的示例,它是 xaml

我试过在这样的空窗口上使用这个例子

示例代码

这是结果:

在此处输入图像描述

所以我想创建一个 OK/Cancel 选择面板并使用 DateTimePicker Pop 并选择你想要什么并接受或中止选择。

我怎样才能创建一个像这样的简单自定义选择器。

0 投票
0 回答
19 浏览

c# - 如何在我的 UI C#/WebView 中添加 cmd 或 bash 小部件

我想在我用 c# avalonia 编写的应用程序中添加类型(bash WSL)或 cmd 窗口的用户控件,就像在 vs 代码中一样。

我很确定有一个项目可以将 bash 导入 Web 查看器,我想知道是否有人知道。如果有这种类型的网络小部件,我可以通过在 avalonia 中创建一个网络查看器来启动该服务来导入它。

0 投票
1 回答
138 浏览

c# - 等效于 Avalonia 的应用程序设置

我正在检查 Avalonia 以移植 WPF 项目,但我看到在项目设置下没有应用程序设置选项卡,只有资源选项卡。

在应用程序的 WPF 版本中,我在运行时使用Settings.Default.Save()Settings.Default.Reset()处理我保存的设置。手动将我的设置文件复制到我的 Avalonia 版本可以让我使用 访问它们Settings.Default.[field name],但我无法再保存或重置它们。

我想知道 Avalonia 是否有设置选项,但我在文档中没有找到。有没有一个选项,或者我应该手动将它们保存到一个文件中:如果是这样,我将如何去做?

0 投票
0 回答
112 浏览

c# - Avalonia WrapPannel 和 ItemsRepeater 组合未按预期工作

我真的很喜欢 Avalonia 框架!但是在我的一个项目上遇到了一些死胡同。

我试图在 WrapPanel 内的堆栈面板中显示数据组。这样我就可以填充屏幕的宽度,然后让它们移动到新的一行。允许用户界面动态“构建”屏幕,而无需我静态声明面板。

这是我需要显示的数据。(输出组列表):

最终目标是每个组有一个框,在每个框中,组名将位于顶部,然后是名称 + 值对的垂直方向,并且无论我的 OutputGroup 列表的大小如何,都将以一种“正常工作”的动态方式进行操作。

这是我尝试过的experimental.asaml 代码:

然而,在这段代码中,我看到的是两个面板按预期显示,从左到右。但是项目重复面板仅在屏幕垂直下方显示 1,就好像它们忽略了我不想要的包装面板一样。

谁能解释为什么这不起作用,或者就如何实现我的最终目标提供替代建议?

0 投票
1 回答
156 浏览

reactiveui - Avalonia 通知导致应用程序崩溃

我正在测试 Avalonia 通知(C#、Windows 10、Visual Studio Community 2019)。每当我按下按钮并更改属性“问候”时,以下代码就会崩溃。 在此处输入图像描述

我想问题是图片中的注释所指示的。问题是如何避免这种情况?更改 Greeting 属性的内容后如何显示通知?这是代码:

最后: