or
I'm using the MVVM pattern for my application.
Is it possible to bind the SortDescriptors collection of a RadGridView to a list in my viewmodel, and if so how do I do that?
Creating a property of type SortDescriptionCollection in my viewmodel is easy, but I don't know how to bind the gridview to that.
Thanks // David
void MainWindow_Loaded(object sender, RoutedEventArgs e)
{
m_dcData = new DataAccessDataContext();
m_dcData.Log = Console.Out;
rgvData.ItemsSource = m_dcData.Orders;
}
<
Grid
>
<
Border
telerikQuickStart:ThemeAwareBackgroundBehavior.IsEnabled
=
"True"
/>
<
telerik:RadGridView
x:Name
=
"rgvData"
CanUserFreezeColumns
=
"False"
GridLinesVisibility
=
"Horizontal"
ItemsSource
=
""
IsReadOnly
=
"True"
AutoGenerateColumns
=
"False"
>
<
telerik:RadGridView.ChildTableDefinitions
>
<
telerik:GridViewTableDefinition
/>
</
telerik:RadGridView.ChildTableDefinitions
>
<
telerik:RadGridView.Columns
>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding OrderDate}"
Header
=
"Order Date"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding EmployeeID}"
Header
=
"Employee"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding Freight}"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding ShipCountry}"
Header
=
"Ship Country"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding ShipCity}"
Header
=
"Ship City"
/>
</
telerik:RadGridView.Columns
>
<
telerik:RadGridView.HierarchyChildTemplate
>
<
DataTemplate
>
<
telerik:RadGridView
x:Name
=
"RadGridView1"
CanUserFreezeColumns
=
"False"
AutoGenerateColumns
=
"False"
ShowGroupPanel
=
"False"
IsReadOnly
=
"True"
>
<
telerik:RadGridView.Columns
>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding CustomerID}"
Header
=
"Customer ID"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding Address}"
Header
=
"Address"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding City}"
Header
=
"City"
/>
<
telerik:GridViewDataColumn
DataMemberBinding
=
"{Binding Country}"
Header
=
"Country"
/>
</
telerik:RadGridView.Columns
>
</
telerik:RadGridView
>
</
DataTemplate
>
</
telerik:RadGridView.HierarchyChildTemplate
>
</
telerik:RadGridView
>
</
Grid
>
Hi
I have a data table which contain round about 25 columns but i just want to show the 10 columns out of those in the RAD Carousel Control. Can you please guide me on how can i achieve this functionality
<
Window
x:Class
=
"RadDatePickerInTemplate.MainWindow"
xmlns:telerik
=
"http://schemas.telerik.com/2008/xaml/presentation"
Title
=
"MainWindow"
Height
=
"350"
Width
=
"525"
>
<
Window.Resources
>
<
DataTemplate
x:Key
=
"ViewTemplate"
>
<
StackPanel
Orientation
=
"Horizontal"
>
<
TextBlock
Text
=
"{Binding Path=Title}"
/>
<
TextBlock
Text
=
"{Binding Path=Date}"
/>
</
StackPanel
>
</
DataTemplate
>
<
DataTemplate
x:Key
=
"EditTemplate"
>
<
StackPanel
Orientation
=
"Horizontal"
>
<
TextBox
Text
=
"{Binding Path=Title, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
/>
<
telerik:RadDatePicker
SelectedDate
=
"{Binding Path=Date, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
/>
</
StackPanel
>
</
DataTemplate
>
<
Style
x:Key
=
"ContainerStyle"
TargetType
=
"{x:Type ListBoxItem}"
>
<
Setter
Property
=
"ContentTemplate"
Value
=
"{StaticResource ViewTemplate}"
/>
<
Style.Triggers
>
<
Trigger
Property
=
"IsSelected"
Value
=
"True"
>
<
Setter
Property
=
"ContentTemplate"
Value
=
"{StaticResource EditTemplate}"
/>
</
Trigger
>
</
Style.Triggers
>
</
Style
>
</
Window.Resources
>
<
Grid
>
<
ListBox
x:Name
=
"MyListBox"
IsSynchronizedWithCurrentItem
=
"True"
ItemContainerStyle
=
"{StaticResource ContainerStyle}"
/>
</
Grid
>
</
Window
>
using
System;
using
System.Collections.Generic;
using
System.Linq;
using
System.Text;
using
System.Windows;
using
System.Windows.Controls;
using
System.Windows.Data;
using
System.Windows.Documents;
using
System.Windows.Input;
using
System.Windows.Media;
using
System.Windows.Media.Imaging;
using
System.Windows.Navigation;
using
System.Windows.Shapes;
namespace
RadDatePickerInTemplate
{
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public
partial
class
MainWindow : Window
{
public
MainWindow()
{
InitializeComponent();
// Show a list of Dates
MyListBox.ItemsSource =
new
List<ListItem>()
{
new
ListItem() { Title =
"Test 1"
, Date =
new
DateTime(2010, 3, 27) },
new
ListItem() { Title =
"Test 2"
, Date =
new
DateTime(2010, 8, 19) },
new
ListItem() { Title =
"Test 3"
, Date =
new
DateTime(2010, 2, 3) }
};
}
}
public
class
ListItem
{
public
string
Title {
get
;
set
; }
private
DateTime _date;
public
DateTime Date
{
get
{
return
_date; }
set
{
// Set a breakpoint here once the form is displayed,
// clicking a listbox row will immediatley break here
_date = value;
}
}
}
}