【问题标题】:DataGrid in Avalonia UI for Linux does not show up when app is running当应用程序运行时,Linux 的 Avalonia UI 中的 DataGrid 不显示
【发布时间】:2020-04-25 15:55:08
【问题描述】:

我在 .NET Core for Linux (Fedora) 上运行 Avalonia UI。 我已经关注 this tutorial 的 DataGrid,但老实说,我使用以下命令添加了包,而不是手动更新 .csproj

dotnet add package Avalonia.Controls.DataGrid

dotnet restoredotnet run 之后,我看不到任何DataGrid。 无论如何 xaml

<StackPanel>
    <DataGrid AutoGenerateColumns="True" Items="{Binding People}"/>
</StackPanel>

ViewModel 看起来不错。

    public ObservableCollection<Person> People { get; }

    public MainWindowViewModel()
    {
        People = new ObservableCollection<Person>(GenerateMockPeopleTable());
    }

我怎样才能找到问题所在?

【问题讨论】:

    标签: c# xaml .net-core avaloniaui


    【解决方案1】:

    我忘记在 App.xaml 中应用 DataGrid 样式(因为我习惯于 Windows 中的 WPF,其中 DataGrid 是标准控件):

        <StyleInclude Source="avares://Avalonia.Controls.DataGrid/Themes/Default.xaml"/>
    

    tutorial明确说明了这一步,所以总结我只是改变了在项目中添加包的方式,只是为了获得最新版本的包参考。

      <ItemGroup>
        <PackageReference Include="Avalonia" Version="0.9.9" />
        <PackageReference Include="Avalonia.Controls.DataGrid" Version="0.9.9" />
        <PackageReference Include="Avalonia.Desktop" Version="0.9.9" />
        <PackageReference Include="Avalonia.ReactiveUI" Version="0.9.9" />
      </ItemGroup>
    

    除了版本号会随着时间而变化,我可以确认上述教程中的一切都是完美的。

    【讨论】:

      猜你喜欢
      • 2012-04-22
      • 1970-01-01
      • 2023-03-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-07-02
      • 2014-08-22
      • 2018-04-18
      相关资源
      最近更新 更多