WPF(XAML,XBAP,.NET3. ..
[2ch|▼Menu]
430:デフォルトの名無しさん
09/03/06 00:33:21
>>429
それ、マークアップ拡張だから、使わないで普通にBinding要素を子要素として
書く事もできるよ。その方がInteliSenseの支援も受けられるし。
 
RelativeSourceが絡んでくる場合とか、マークアップ拡張使うと
中カッコが二重になって>>429が言う通りうんざりする。入力支援
もないし。でも、Binding要素とそのRelativeSourceプロパティに
RelativeSource要素を普通のxmlの文法で書けば嫌な点は解消される。
 
例えば、前に書いた、Canvasに置いてあるViewport3Dの幅をCanvasに合わせる
コードを書いておくね(なぜかHorizontalAlignment=Stretchだとうまくいかなかった)。
 
 <Viewport3D.Width>
  <Binding Path="ActualWidth">
    <Binding.RelativeSource>
      <RelativeSource Mode="FindAncestor"
        AncestorType="{x:Type Canvas}"
        AncestorLevel="1"/>
    </Binding.RelativeSource>
  </Binding>
</Viewport3D.Width>
 
等価なのは
 
<Viewport3D Width={Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type Canvas}, AncestorLevel=1}}/>
 
だけど、これだと>>429が言うように支援がなくて書くのが大変だし、
実行時まで間違いが分からないし、実行時の例外の内容は分け分からないしで
嫌になるのも分かる。


次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

4969日前に更新/148 KB
担当:undef