以下の内容はhttps://kkamegawa.hatenablog.jp/entry/20101210/p1より取得しました。


SilverlightのComboBox.IsDropDownOpenはXAMLに設定できる?

id:kkamegawa:20101208:p1ではまっていた件、やっとわかりました。というか、ちゃんとエラーメッセージ見ていればXAMLの位置まで書いていたのに。
MSDNによると、SilverlightComboBox.IsDropDownOpenは「コンボ ボックスのドロップダウン部分が現在開いているかどうかを示す値を取得または設定します。」とあります。意図していなかったというか、間違えてこれをtrueに設定したままコンパイルしていました。こんな感じ。

<StackPanel Orientation="Horizontal" VerticalAlignment="Center">
  <ComboBox Name="Combo1" Width="100" FontSize="16" SelectedIndex="0" IsDropDownOpen="true">
    <ComboBoxItem Content="テスト1" ></ComboBoxItem>
    <ComboBoxItem Content="テスト2" ></ComboBoxItem>
    <ComboBoxItem Content="テスト3" ></ComboBoxItem>
  </ComboBox>
</StackPanel>

ところが、このIsDropDownOpenプロパティにtrueに設定していると*1Silverlight起動時にXamlParseExceptionが発生し、プロパティに対応するVALUEがないという、E_AG_BAD_PROPERTY_VALUEが発生します。
うーん、確かに悪いんだけれども、これはコンパイルエラーにならないものかな…というか、ドキュメント間違い?環境は昨日書いた通り、Visual Studio 2008 SP1+Silverlight 4(開発は当然3)です。

*1:なぜかやってしまっていた




以上の内容はhttps://kkamegawa.hatenablog.jp/entry/20101210/p1より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14