かずきのBlog

C#やJavaやRubyとメモ書き

目次

Blog 利用状況

ニュース

わんくまBlogが不安定になったため、前に書いてたはてなダイアリーにメインを移動します。
かずきのBlog@Hatena
技術的なネタは、こちらにも、はてなへのリンクという形で掲載しますが、雑多ネタははてなダイアリーだけに掲載することが多いと思います。
コメント
プログラマ的自己紹介
お気に入りのツール/IDE
プロフィール
経歴
広告
アクセサリ

書庫

日記カテゴリ

2008年6月30日 #

[Silverlight]Silverlight2にはCommandがないのかな?

ぱっと見た感じ見当たらない。
CommandBindingsとかがコードエディタで補完されない!!

う~ん。無いのか
参考URL:http://d.hatena.ne.jp/Yamaki/20080324/1206341328

結構好きな機能だったのに残念です。

posted @ 18:15 | Feedback (72)

[C#][Silverlight]Silverlight2にはDockPanelって無いのね

c303さんが自作のDockPanelをSilverlightで使ってるので、何でだろ?って思ってSilverlightを弄くってみたら、DockPanel無かったのかorz
コンボボックスも無かったり、地味に使うものが無いSilverlight2!

まったく持ってけしからん!!
といっても、Silverlightも結構強力なもので「XXXXが無ければ作ればいいじゃない?」ということが平気で言える。
DockPanelに至っては、WPFで一番強力なレイアウトのGridが使えるので、そいつでまかなえたりする。

ということで、レッツトライ!
構造としては、縦方向にはTop,Center,Bottomにあたる3行をおく。横方向にもLeft,Center,Rightにあたる3列をおく。後は、RowSpanとColumnSpanを適当に設定してコントロールを置くと完成。

<UserControl x:Class="DockPanelModoki.Page"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
    <Grid x:Name="LayoutRoot" Background="White">
        <Grid.RowDefinitions>
            <!-- 
                Top, Center, Bottom 
                TopとBottomに必要なだけ幅を指定して、Centerの部分は残り全部。
            -->
            <RowDefinition Height="Auto" />
            <RowDefinition Height="*" />
            <RowDefinition Height="Auto" />
        </Grid.RowDefinitions>
        <Grid.ColumnDefinitions>
            <!-- 
                Left Center Right 
                LeftとRightに必要なだけ幅を指定して、Centerの部分は残り全部。
            -->
            <ColumnDefinition Width="Auto" />
            <ColumnDefinition Width="*" />
            <ColumnDefinition Width="Auto" />
        </Grid.ColumnDefinitions>
        <Button Grid.Row="0" Grid.Column="1" Grid.ColumnSpan="2" 
                Content="Top"/>
        <Button Grid.Row="0" Grid.Column="0" Grid.RowSpan="2" 
                Content="Left"/>
        <Button Grid.Row="1" Grid.Column="2" 
                Content="Right"/>
        <Button Grid.Row="2" Grid.Column="0" Grid.ColumnSpan="3" 
                Content="Bottom"/>
        <Button Grid.Row="1" Grid.Column="1"
                Content="Centerにあたるボタン"/>
    </Grid>
</UserControl>

実行してみると、DockPanelっぽくなってる。
image

小さくしても大丈夫
image

posted @ 0:35 | Feedback (665)