C# 如何在Avalonia扩展控制?
我想用一些功能扩展默认下拉列表。自定义下拉列表的行为应类似于C# 如何在Avalonia扩展控制?,c#,avaloniaui,C#,Avaloniaui,我想用一些功能扩展默认下拉列表。自定义下拉列表的行为应类似于.xaml文件中的默认下拉列表,因此可以向其中添加项目 不幸的是,它似乎不像WPF那样工作。这就是我的方法: MainWindow.xaml:(添加了名称空间) 这似乎在编译时没有错误或警告,但控件不会显示。您还需要应用下拉列表的控件样式。您可以通过如下方式更改样式键来完成此操作: : public类UserControl:ContentControl,IStyleable { Type IStyleable.StyleKey=>typ
.xaml
文件中的默认下拉列表,因此可以向其中添加项目
不幸的是,它似乎不像WPF那样工作。这就是我的方法:
MainWindow.xaml:(添加了名称空间)
这似乎在编译时没有错误或警告,但控件不会显示。您还需要应用下拉列表的控件样式。您可以通过如下方式更改样式键来完成此操作: :
public类UserControl:ContentControl,IStyleable
{
Type IStyleable.StyleKey=>typeof(ContentControl);
Link only answer!复制相关部分并将其作为答案的一部分发布,而不是仅仅指向其他网站。有关更多信息,请阅读@keks,以了解一些参考的myget存储库正在关闭(不再可访问)你能解释一下你的答案吗?我知道在GitHub的世界里,链接20个项目是“可以接受的”…但是,我们无法再为AvalonStudio构建源代码,因为其中一个F#测试项目需要一个不再存在的引用。因此,在StackExchange上,每个人都指向链接,只回答并尖叫Mateusz所说的话。因为引用的链接下降了,答案不再存在;有点像github项目,链接断了新冠病毒时代的未决事件。:P
<local:myCustomDropDown>
<DropDownItem>1</DropDownItem>
<DropDownItem>2</DropDownItem>
</local:myCustomDropDown>
<DropDown xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
x:Class="AvaloniaApplication2.myCustomDropDown">
</DropDown>
public class myCustomDropDown : DropDown
{
public myCustomDropDown()
{
this.InitializeComponent();
}
private void InitializeComponent()
{
AvaloniaXamlLoader.Load(this);
}
}