
Envoyé par
Lapinpanda
Je vois pas ce qu'il te faut de plus. Peux être ne comprends tu pas trop le fonctionnement de Silverlight.
Oui en effet j'ai du raté un passage de silverlight ...
Je vais détailler mon problème et ainsi j'éspère que vous pourez détailler votre solution 
Je travaille avec les librairies Telerik pour datagrid, ce qui me donne pour la partie xaml:
1 2
|
<telerik:RadGridView x:Name="radGridView" CanUserDeleteRows="False" CanUserInsertRows="False" EditTriggers="None" Grid.ColumnSpan="2" /> |
Ensuite re source ma RadGridView avec un IEnumerable<IDictionary> généré dynamiquement depuis un fichier XML:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
|
public IEnumerable<IDictionary> GenerateData(string filter)
{
XElement sheets = XElement.Load(UrlFile);
if (filter == null)
{
return
from row in sheets.Elements("row")
select MakeDictionary(row);
}
else
{
return
from row in sheets.Elements("row")
where row.Attribute("filter").Value.Contains(filter)
select MakeDictionary(row);
}
}
IDictionary MakeDictionary(XElement row)
{
var dict = row.Elements().ToDictionary(e => e.Name.LocalName, ParseValue);
return dict;
}
object ParseValue(XElement e)
{
float value;
if (float.TryParse(e.Value, out value))
{
if (Math.Abs(value) < 1 && value!=0)
{
return value.ToString("#0.##%", CultureInfo.InvariantCulture);
}
else
{
return value;
}
}
return e.Value;
} |
Et j'ai donc dans ma vue.xaml.cs le code suivant.
this.radGridView.ItemsSource = XmlContentFile.getDataSource();
Donc a aucun moment je ne définie mes templates car tous est auto généré a partir d'une collection d'objet.
Merci de votre aide.
Partager