Merge pull request #274 from irihitech/273-datagrid

Fix datagrid disable visual.
This commit is contained in:
Zhang Dian 2023-11-08 15:16:53 +08:00 committed by GitHub
commit 547d733f84
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 55 additions and 39 deletions

View File

@ -13,43 +13,48 @@
mc:Ignorable="d"> mc:Ignorable="d">
<TabControl> <TabControl>
<TabItem Header="DataGrid"> <TabItem Header="DataGrid">
<DataGrid <Grid RowDefinitions="Auto, *">
Margin="8" <ToggleSwitch Grid.Row="0" Content="Disable" Name="DisableToggle"></ToggleSwitch>
CanUserReorderColumns="True" <DataGrid Grid.Row="1"
CanUserResizeColumns="True" Margin="8"
CanUserSortColumns="True" CanUserReorderColumns="True"
HeadersVisibility="All" CanUserResizeColumns="True"
IsReadOnly="True" CanUserSortColumns="True"
ItemsSource="{Binding GridData1}"> HeadersVisibility="All"
<DataGrid.Columns> IsReadOnly="True"
<DataGridTextColumn IsEnabled="{Binding #DisableToggle.IsChecked}"
Width="6*" ItemsSource="{Binding GridData1}">
x:DataType="vm:Song" <DataGrid.Columns>
Binding="{Binding Title}" <DataGridTextColumn
Header="Title" /> Width="6*"
<DataGridTextColumn x:DataType="vm:Song"
Width="6*" Binding="{Binding Title}"
x:DataType="vm:Song" Header="Title" />
Binding="{Binding Artist}" <DataGridTextColumn
Header="Artist" /> Width="6*"
<DataGridTextColumn x:DataType="vm:Song"
Width="6*" Binding="{Binding Artist}"
x:DataType="vm:Song" Header="Artist" />
Binding="{Binding Album}" <DataGridTextColumn
Header="Album" /> Width="6*"
<DataGridTemplateColumn Header="Duration" SortMemberPath="Duration"> x:DataType="vm:Song"
<DataGridTemplateColumn.CellTemplate> Binding="{Binding Album}"
<DataTemplate> Header="Album" />
<TextBlock <DataGridTemplateColumn Header="Duration" SortMemberPath="Duration">
Margin="8,0,0,0" <DataGridTemplateColumn.CellTemplate>
VerticalAlignment="Center" <DataTemplate>
Text="{Binding Duration}" /> <TextBlock
</DataTemplate> Margin="8,0,0,0"
</DataGridTemplateColumn.CellTemplate> VerticalAlignment="Center"
</DataGridTemplateColumn> Text="{Binding Duration}" />
</DataGrid.Columns> </DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
</DataGrid.Columns>
</DataGrid> </DataGrid>
</Grid>
</TabItem> </TabItem>
<TabItem Header="Grouping"> <TabItem Header="Grouping">
<DataGrid <DataGrid
@ -162,6 +167,7 @@
Grid.Row="2" Grid.Row="2"
Margin="12,0,12,12" Margin="12,0,12,12"
HorizontalAlignment="Right" HorizontalAlignment="Right"
Command="{Binding AddCommand}"
Content="Add" /> Content="Add" />
</Grid> </Grid>
</TabItem> </TabItem>

View File

@ -4,6 +4,7 @@ using System.Collections.ObjectModel;
using System.Linq; using System.Linq;
using Avalonia.Collections; using Avalonia.Collections;
using CommunityToolkit.Mvvm.ComponentModel; using CommunityToolkit.Mvvm.ComponentModel;
using CommunityToolkit.Mvvm.Input;
namespace Semi.Avalonia.Demo.ViewModels; namespace Semi.Avalonia.Demo.ViewModels;
@ -15,6 +16,8 @@ public class DataGridDemoViewModel: ObservableObject
public ObservableCollection<SongViewModel> GridData3 { get; set; } public ObservableCollection<SongViewModel> GridData3 { get; set; }
public RelayCommand AddCommand { get; set; }
public DataGridDemoViewModel() public DataGridDemoViewModel()
{ {
GridData1 = new ObservableCollection<Song>(Song.Songs); GridData1 = new ObservableCollection<Song>(Song.Songs);
@ -28,6 +31,12 @@ public class DataGridDemoViewModel: ObservableObject
CountOfComment = a.CountOfComment, CountOfComment = a.CountOfComment,
IsSelected = false IsSelected = false
})); }));
AddCommand = new RelayCommand(Add);
}
private void Add()
{
GridData3.Add(new SongViewModel());
} }
} }

View File

@ -26,5 +26,5 @@
<SolidColorBrush x:Key="DataGridRowGroupHeaderCurrentBorderBrush" Opacity="0.08" Color="White" /> <SolidColorBrush x:Key="DataGridRowGroupHeaderCurrentBorderBrush" Opacity="0.08" Color="White" />
<SolidColorBrush x:Key="DataGridDisabledBackground" Color="#F9F9F9" /> <SolidColorBrush x:Key="DataGridDisabledBackground" Color="#E6E8EA" Opacity="0.04" />
</ResourceDictionary> </ResourceDictionary>

View File

@ -26,5 +26,5 @@
<SolidColorBrush x:Key="DataGridRowGroupHeaderCurrentBorderBrush" Opacity="0.08" Color="#1C1F23" /> <SolidColorBrush x:Key="DataGridRowGroupHeaderCurrentBorderBrush" Opacity="0.08" Color="#1C1F23" />
<SolidColorBrush x:Key="DataGridDisabledBackground" Color="#F9F9F9" /> <SolidColorBrush x:Key="DataGridDisabledBackground" Color="#2E3238" Opacity="0.02" />
</ResourceDictionary> </ResourceDictionary>

View File

@ -5,6 +5,7 @@
<PropertyGroup> <PropertyGroup>
<Title>Semi.Avalonia.DataGrid</Title> <Title>Semi.Avalonia.DataGrid</Title>
<PackageReleaseNotes>Update to 11.0.1</PackageReleaseNotes> <PackageReleaseNotes>Update to 11.0.1</PackageReleaseNotes>
<Version>11.0.1.1</Version>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>