- PR -

プロパティ値がInitializeComponentに自動生成される件

投稿者投稿内容
なちゃ
ぬし
会議室デビュー日: 2003/06/11
投稿数: 872
投稿日時: 2006-04-20 19:48
ShouldSerializeSizeメソッドとか追加してみたり。
囚人
ぬし
会議室デビュー日: 2005/08/13
投稿数: 1019
投稿日時: 2006-04-20 20:27
インスタンスのプロパティ値を一括で登録し、その登録処理自体を「再利用したい」という理由で「継承を使う」というのは、やりがちですが、OO 的には宜しくないでしょうね。

DUKE更家さん自身も仰っていますが、親クラスの機能が制限されている時点でアウトでしょう。

コード:
class MyButtonFactory
{
	private MyButtonFactory(){}
	public static Button CreateButton()
	{
		Button createdButton = new Button();
		// XML ファイルから各種値を読み込み Button の各プロパティを設定
		
		return createdButton;
	}
}

…

Button b1 = MyButtonFactory.CreateButton();


とか、めちゃ単純に考えたらこんなのですね。他にもいろいろ考えられますが。
別に動作を変えたいわけではなくて、プロパティの値を設定したいだけですよね?

_________________
囚人のジレンマな日々
DUKE更家
会議室デビュー日: 2006/04/19
投稿数: 14
投稿日時: 2006-04-20 22:38
囚人さんお返事ありがとうございます。

>Button b1 = MyButtonFactory.CreateButton();
確かにデザイナを使用しないのであれば、これで一括設定が可能ですね。
私一人で大量のボタンを作成するのであればもちろんこうしていました。

ただ、今回はプログラムに関しては素人のメンバーが、デザイナを使用して
コントロールを貼り付けていく為、コードを書くのが制限されています。

今はその準備段階でして、悩んでいる次第であります。
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-04-21 01:24
引用:

DUKE更家さんの書き込み (2006-04-20 22:38) より:

ただ、今回はプログラムに関しては素人のメンバーが、デザイナを使用して
コントロールを貼り付けていく為、コードを書くのが制限されています。


余計工数がかかるので、本末転倒じゃないかと思います。
その素人のメンバを素人のままにしておくというのも、あまりに付加価値がないですね。

引用:

1、全ての画面リソースのプロパティはxmlファイルで一括管理
2、画面リソース作成者は一切のプロパティ変更を禁止
3、画面リソース作成者はノンプログラミングで実装


リソース... ですか。
デザイナによって生成されるコードはある意味、ノンコーディング だと思いますけどね。
相手が素人だろうと VSS なんかを導入しておけばオール OK な気がします。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌

スキルアップ/キャリアアップ(JOB@IT)