SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

ComponentZine(ComponentOne)

WPFアプリケーションにテキストブロックのプロパティ変更機能を実装する

ComponentOne Studioを活用したWindowsフォームアプリケーションの作成

  • X ポスト
  • このエントリーをはてなブックマークに追加

C1PropertyGridコントロールの概要 2

プロパティ項目の編集

 C1PropertyGridコントロールは、デフォルトでは連結したコントロールのすべてのプロパティを表示する設定になっていますが、この項目を自由にカスタマイズすることができます。

 この操作には専用のエディタが用意されており、ここでアプリケーション実行時に操作したいプロパティを選びます。

 プロパティ項目をカスタマイズする場合は、まずプロパティウィンドウで「AutoGenerateProperties」プロパティのチェックを外します。次に、「PropertyAttributes」プロパティの値欄にある「...」ボタンをクリックすると、PropertyAttributeオブジェクトを編集するコレクションエディタが起動します。

プロパティ項目を設定するコレクションエディタ
プロパティ項目を設定するコレクションエディタ

 コレクションエディタでは、「追加」ボタンをクリックしてPropertyAttributeオブジェクトを追加します。このオブジェクト1つが1つのプロパティとなります。

 そして、右ペインにある「DisplayName」と「MemberName」プロパティを設定します。「DisplayName」プロパティは表示されるプロパティ名で、「MemberName」プロパティが操作したいプロパティの名称です。たとえば、TextBlockコントロールの背景色を操作したければ、「DisplayName」プロパティに「背景色」と、「MemberName」プロパティには「Background」と入力します。

 プロパティをグループでまとめたい場合は、「Category」にグループ名を入力します。

グループ分けされたプロパティリスト(ヘルプより抜粋)
グループ分けされたプロパティリスト(ヘルプより抜粋)

 こうして、コントロール一つ一つに対して操作できるプロパティのリストを作成します。

他のコントロールとのバインド

 プロパティ操作をしたいコントロールとC1PropertyGridコントロールを連結するには、C1PropertyGridコントロールのSelectedObjectプロパティに、XAMLで次のようにBinding ElementNameを設定します。

SelectedObject="{Binding ElementName=TextBlock3, Mode=OneWay}"

 たったこれだけで、C1PropertyGridコントロールはこのオブジェクトからプロパティ一覧を取出しリスト表示してくれます。

次のページ
GUIの作成 1

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
ComponentZine(ComponentOne)連載記事一覧

もっと読む

この記事の著者

瀬戸 遥(セト ハルカ)

8ビットコンピュータの時代からBASICを使い、C言語を独習で学びWindows 3.1のフリーソフトを作成、NiftyServeのフォーラムなどで配布。Excel VBAとVisual Basic関連の解説書を中心に現在まで40冊以上の書籍を出版。近著に、「ExcelユーザーのためのAccess再...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/7594 2014/01/27 18:10

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング