wpf - 我想重新排列自然完成的 ObservableCollection
问题描述
我正在研究 WPF MVVM。
我正在从数据库中获取记录,并且已将 ObservableCollection 绑定到 xaml Itemsource。
获取列表代码:
private async void getKYCUserDetails()
{
var data = _DataService.Client;
var AllKYCUserList = await data.For<vwKYCUserDetails>().FindEntriesAsync();
lstTempKYCUserDetails= new ObservableCollection<vwKYCUserDetails>(AllKYCUserList);
}
我想重新排列 ObservableCollection 以便系统必须在报告顶部显示其详细信息在性质上完整的客户端,以便用户可以按照 JIT 方法行事。
xml:
<syncfusion:SfDataGrid x:Name="dgKYCUser"
ItemsSource="{Binding Path = lstTempKYCUserDetails,Mode=TwoWay}"
SelectedItem="{Binding SelectedItem,Mode=TwoWay}"
NavigationMode="Row"
SelectionMode="Multiple"
ColumnSizer="Auto"
HeaderRowHeight="30"
AllowFiltering="True"
AllowSorting="True"
AllowGrouping="True"
ShowGroupDropArea="True"
HeaderStyle="{StaticResource headerStyle}"
AllowResizingColumns="True"
AllowDraggingColumns="True"
AllowDrop="True"
AutoGenerateColumns="False"
Foreground="#3e4345"
AllowEditing="True"
FrozenColumnCount="2"
BorderBrush="Red"
Background="White"
>
我在 sfDatagrid 中有多个列,因为我正在使用 Converter 将布尔值转换为图像并显示图像。
例如
<syncfusion:GridImageColumn
ImageHeight="20" Width="30" ShowHeaderToolTip="True"
MappingName="bMobileVerify" HeaderText="Mobile Verified"
ValueBinding="{Binding bMobileVerify, Converter={StaticResource ImageConverter}}"
/>
ImageConverter 代码:
public class ImageConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
if ((Boolean)value == true)
{
return new BitmapImage(new Uri(string.Format(@"..\..\Images\{0}", "check.png"), UriKind.Relative));
}
else if ((Boolean)value == false)
{
return new BitmapImage(new Uri(string.Format(@"..\..\Images\{0}", "crosssqr.png"), UriKind.Relative));
}
return new BitmapImage(new Uri(string.Format(@"..\..\Images\{0}", "TransparentBackground.png"), UriKind.Relative));
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
throw new NotImplementedException();
}
}
我希望具有最多刻度的记录应该在顶部同样应该排列,我不知道如何重新排列它。
解决方案
你可以使用 ICollectionView
ICollectionView 视图 = CollectionViewSource.GetDefaultView(lstTempKYCUserDetails); view.SortDescriptions.Add(new SortDescription("tickscounter", ListSortDirection.Descending));
推荐阅读
- visual-studio - 如何在仍然使用 sysnative 虚拟文件夹的同时使用 Visual Studio 的 Exec 代码 -1 避免错误 MSB3073
- java - How do I get a pure JSON string instead of HTML
- c# - 即使通过工具和功能安装模块后,Linq to SQL 也没有显示
- javascript - 更新时在对象上使用 useState 挂钩时是否需要使用扩展运算符?
- reactjs - 单击不同元素后反应保持焦点位置
- php - 尝试向本地服务器发送登录请求时,是什么导致我的代码不返回任何数据?
- flutter - 更改列表的排序索引
- r - 在两个 ggplot 直方图上显示平均值和中位数
- php - mailgun 发送邮件 api PHP 在 GAE 中不起作用。未捕获的错误:找不到类“Mailgun\Mailgun”
- wordpress - 在方括号中禁用 facebook 的 Wordpress 自动文本替换