Méthode pour créer des colonnes personnalisées ? (DataGrid)
Bonjour tout le monde ! :D
J'aimerai pouvoir créer des colonnes personnalisées pour ma DataGrid.
Par exemple, je veux créer une colonne de type DatePicker.
J'ai opté pour une classe partielle divisée entre C# et XAML parce que je pensais que ce serait le plus simple pour construire les templates facilement avec XAML.
Voilà mes codes :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| public partial class DataGridDateColumn : DataGridTemplateColumn
{
public Binding Binding
{
set
{
}
}
public DataGridDateColumn()
: base()
{
InitializeComponent();
}
} |
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| <sdk:DataGridTemplateColumn x:Class="SilverlightGrid.DataGridDateColumn"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:sdk="http://schemas.microsoft.com/winfx/2006/xaml/presentation/sdk"
Width="100"
>
<!-- Template de la cellule en affichage standard -->
<sdk:DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<TextBlock x:Name="affichage"/>
</DataTemplate>
</sdk:DataGridTemplateColumn.CellTemplate>
<!-- Template de la cellule en mode édition -->
<sdk:DataGridTemplateColumn.CellEditingTemplate>
<DataTemplate>
<sdk:DatePicker />
</DataTemplate>
</sdk:DataGridTemplateColumn.CellEditingTemplate>
</sdk:DataGridTemplateColumn> |
Cependant, je souhaiterais pouvoir modifier dynamiquement le Binding de la colonne, et donc du TextBlock et du DatePicker.
Je n'arrive pas à y accéder via le C#, mais via le XAML oui (ce qui n'est pas suffisant dans mon cas).
Vous voyez que j'ai mis un attribut x:Name au TextBlock et pourtant rien n'y fait, IntelliSense ne le détecte pas. :cry:
Y-a-t-il une autre méthode d'y accéder ?
Merci. :D