サンプルデータは、ビルドタイプDesignDataまたはDesignDataWithDesignTimeCreatableTypesでマークされたオブジェクトグラフを定義するxaml(xmlだけでなく)ファイルです。ドキュメントはMSDNでまばらですが、Silverlightデザイナーでの使用に関するこのドキュメントは、2012年のどのxamlデザイナーでも基本的に同じです。
これらのタイプのサンプルを使用する場合、「ライブデータ」はありません。すべての値はxamlファイルに設定されています。たとえば、デザイナ内の特定のテキストボックスのデータを変更することはできません。また、異なるサンプルを簡単に切り替えることもできません。
サンプルデータを作成するには、2つの方法があります。手動で作成する方法(タイプがわかっていて、xamlの記述に慣れている場合)、または単純なコンソールアプリケーションを起動し、オブジェクトグラフを作成してから、XamlServicesクラスを使用して、グラフを文字列にシリアル化します(または、代わりにストリームにドロップするように書き直します)。記述どおりに機能する場合と機能しない場合があるC#擬似コードを次に示します。
public string Serialize(object toSerialize)
{
var sb = new StringBuilder();
var writer = XmlWriter.Create(sb);
XamlServices.Save(writer, toSerialize);
writer.Flush();
writer.Close();
return sb.ToString();
}
新しいファイルを作成し、それに.xaml拡張子を付け、そのファイルに結果をドロップしてソリューションに保存し、そのビルドアクションをDesignData(デザイナーがタイプの構造をモックする)またはDesignTimeDataWithDesignTimeCreatableTypes(後者の場合)に設定するだけです。グラフはXamlServicesで逆シリアル化でき、デザイナーなどで使用されたときに例外をスローしません)。