Calender

S M T W T F S
 123456
78910111213
14151617181920
21222324252627
28293031   
<< October 2018 >>

Categories

Archives

Recent Entries

Recent Comment

Recent Trackback

w closet×JUGEM

-

WPF の コマンド 引数 を 設定 する 方法 - galife

@media print { body { margin: 2mm 9mm; } .original-url { display: none; } #article .float.left { float: left !important; } #article .float.right { float: right !important; } #article .float { margin-top: 0 !important; margin-bottom: 0 !important; } } WPF の コマンド 引数 を 設定 する 方法 - galife

WPF の コマンド 引数 を 設定 する 方法

基本は xaml で CommandParameter属性 を指定することで引数を渡せます。 以下ではいくつかの サンプルコード を記載しました。

目次

  • 固定値 を 渡す 例
  • 要素 を 渡す 例
    • コントロールを渡す例
    • Windowを渡す例
  • 要素 の プロパティ を 渡す 例

固定値 を 渡す 例

CommandParameter="固定値" を指定します。 ラジオボタンくらいしか使い道が思いつきません…。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

<Window x:Class="WpfApplication.MainView"

        xmlns:vm="clr-namespace:WpfApplication.ViewModels"

        Title="MainWindow"

        Name="window" >

    <Window.DataContext>

        <vm:MainViewModel />

    </Window.DataContext>

    <Grid>

        <RadioButton Content="春"

                     Command="SelectSeason"

                     CommandParameter="1" />

        <RadioButton Content="夏"

                     Command="SelectSeason"

                     CommandParameter="2" />

        <RadioButton Content="秋"

                     Command="SelectSeason"

                     CommandParameter="3" />

        <RadioButton Content="冬"

                     Command="SelectSeason"

                     CommandParameter="4" />

    </Grid>

</Window>

要素 を 渡す 例

渡したい要素に Name属性 を設定し、CommandParameter="{Binding ElementName=要素名}" を指定します。 Name属性 さえ指定していれば良いので、 Control でも Window でも渡せてしまいます。

TextBox コントロール を引数に渡す 例

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

<Window x:Class="WpfApplication.MainView"

        xmlns:vm="clr-namespace:WpfApplication.ViewModels"

        Title="MainWindow"

        Name="window" >

    <Window.DataContext>

        <vm:MainViewModel />

    </Window.DataContext>

    <Grid>

        <TextBox Text="サンプル"

                 Name="textbox" />

        <Button Content="閉じる"

                Command="Close"

                CommandParameter="{Binding ElementName=textbox}"/>

    </Grid>

</Window>

Window を引数に渡す 例

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

<Window x:Class="WpfApplication.MainView"

        xmlns:vm="clr-namespace:WpfApplication.ViewModels"

        Title="MainWindow"

        Name="window" >

    <Window.DataContext>

        <vm:MainViewModel />

    </Window.DataContext>

    <Grid>

        <TextBox Text="サンプル"

                 Name="textbox" />

        <Button Content="閉じる"

                Command="Close"

                CommandParameter="{Binding ElementName=window}"/>

    </Grid>

</Window>

要素 の プロパティ を 渡す 例

渡したい要素に Name属性 を設定し、CommandParameter="{Binding ElementName=要素名 Path=プロパティ名}" を指定します。

TextBox の Textプロパティ を引数に渡す 例

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

<Window x:Class="WpfApplication.MainView"

        xmlns:vm="clr-namespace:WpfApplication.ViewModels"

        Title="MainWindow"

        Name="window" >

    <Window.DataContext>

        <vm:MainViewModel />

    </Window.DataContext>

    <Grid>

        <TextBox Text="サンプル"

                 Name="textbox" />

        <Button Content="閉じる"

                Command="Close"

                CommandParameter="{Binding ElementName=textbox Path=Text}"/>

    </Grid>

</Window>

最後に… このブログに興味を持っていただけた方は、 ぜひ 「Facebookページ に いいね!」または 「Twitter の フォロー」 お願いします!!



iPadから送信
  • 2018.08.11 Saturday
  • 04:59

Comment
Send Comment








   
この記事のトラックバックURL
Trackback