いくつかの単純なDataGrids(xmlns:kit = "http://schemas.microsoft.com/wpf/2008/toolkit")にバイナリファイルの内容を表示したい")。私はファイルのレイアウトを知っています。それは非常に簡単です。単純なWPFバインディングの質問。 DataGridを構造体の1つの構造体と配列(リスト)にバインドする
まず私は、フォームのいくつかの簡単な構造体を持っている:
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public class PartitionBasicStationData
{
public uint longitude;
public uint latitude;
public uint StationCode;
}
私は、ファイルにこれらのちょうど1 intanceを持っています。それはおそらく過剰ですが、私はそれをDatagridに投げたいです。私は成功したバイナリファイルを読み込み、作成した後、
<kit:DataGrid Name="m_gridPartion1" MinWidth="120" MinHeight="120"></kit:DataGrid>
とコードで:私は私のXAMLのように見えるなど、私は自動的に「経度」、「緯度」、のようないくつかの単純な列ヘッダを取得したい期待していました構造、私はこれを行う:
m_gridPartion1.ItemsSource = new Partition1[1] { partition1 };
//m_gridPartion1.DataContext = new Partition1[1]{partition1}; // also tried this
// m_gridPartion1.ItemsSource = partion1; // and I tried this
これは動作する必要がありますか?
私の2番目のグリッドには、単純な構造もありますが、それらの多くがあります。私はちょうどこのような何か行うことができます願っていた
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public class Datum
{
public uint temperature;
public uint windVelocity;
}
のような構造に見える:
m_gridData.ItemsSource = myList; // myList is List<Datum>
任意のチュートリアルやポインタをいただければ幸いです。私が遭遇した資料のほとんどは、XAML(これは簡単なのであれば反対ではない)からのバインド、または過剰な使用(列名の設定など)です。
おかげで、
デイブ
パーフェクト!ありがとう、答えとしてマーク。私はボーナスの質問をすることはできますか?ステーションコードをパブリックバイト[]として作成した場合StationCode {get; set;}、私は何をして、バイトがグリッドに現れるでしょうか?現在、それは空白です。私はint、unitsなどを取得すると推測しています。無料ですが、byte []には何らかのフォーマットが必要です。 – Dave
ありがとう脂肪!私は両方のアイデア(String FormatとConverter)を使用しました。魅力のように働いた。 – Dave