- PR -

C#のリソースファイルについてお聞きしたいです。

1
投稿者投稿内容
comeseesee
常連さん
会議室デビュー日: 2004/11/24
投稿数: 36
投稿日時: 2005-02-01 14:30
こんにちは、いつもお世話になっております。
C#のリソースファイルについてお聞きしたいですが、

@VS.NET2003にて、WindowsFormアプリケーション(C#)を作成しています。
プロジェクトに親クラスを継承する「Windowsフォーム」を追加すると作成先ディレクト
リにcsファイルとresxファイルが自動生成されます。

Aフォームに自作のコートロールを貼り付けます。

WINDOWS標準コントロールの場合、フォームに貼り付けたコントロールのプロパティが含まれていますが、以上の場合ですと、自動生成されたリソースファイルに「Locked、Modifiers、DefaultModifiers」の三つのプロパティしかないです。

<data name="myControl1.Locked" ‥省略‥>
<value>False</value>
</data>
<data name="myControl1.Modifiers" ‥省略‥>
<value>Private</value>
</data>
<data name="myControl1.DefaultModifiers" ‥省略‥>
<value>Private</value>
</data>

質問:
以上の場合、自動生成されたリソースファイルに何を出力するかを設定することができますか?(例えば、myControlのtextプロパティを自動出力したい場合、どうすればいいですか?)
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2005-02-01 18:53
じゃんぬねっと です。

引用:

以上の場合、自動生成されたリソースファイルに何を出力するかを設定することができますか?(例えば、myControlのtextプロパティを自動出力したい場合、どうすればいいですか?)



何故、そのようなことをしたいのかが判りません。
あなたの挙げた、3 つ以外の設定 (初期化の値) はすべて、
.cs ファイルのコンストラクタ部分にありますから...
_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
comeseesee
常連さん
会議室デビュー日: 2004/11/24
投稿数: 36
投稿日時: 2005-02-01 19:09
じゃんぬねっと 様

>>何故、そのようなことをしたいのかが判りません。
>>あなたの挙げた、3 つ以外の設定 (初期化の値) はすべて、
>>.cs ファイルのコンストラクタ部分にありますから...

コントロールのtextをリソースファイルに出力して、翻訳ソフトを使って英語版を自動的に作るためです(いわゆるWindows フォームのローカリゼーションです)。その翻訳ソフトはリソースファイルからコントロールのtextプロパティを読み出して翻訳する仕組みになっています)
にしざき
ぬし
会議室デビュー日: 2003/06/30
投稿数: 304
投稿日時: 2005-02-01 22:37
System.ComponentModel.LocalizableAttribute でできませんか?
comeseesee
常連さん
会議室デビュー日: 2004/11/24
投稿数: 36
投稿日時: 2005-02-03 10:27
にしざき 様
ご回答ありがとうございます。

>>System.ComponentModel.LocalizableAttribute でできませんか?

コントロールに以下のようにValueのプロパティを追加しましたが、自動生成リソースファイルに出力しませんでした。

[Localizable(true)]
public string Value
{
get
{
return base.Text;
}
set
{
this.Text=value;
}
}

コードでValueプロパティ の LocalizableAttribute の値を確認しましたが、LocalizableAttribute.Yesで、リソースファイルに出力できる状態になっています。
comeseesee
常連さん
会議室デビュー日: 2004/11/24
投稿数: 36
投稿日時: 2005-02-03 11:46
問題は解決しました。
フォームのlocalizableのプロパティをtrueにするとフォーム上のコントロールのプロパティが全てリソースファイルに出力しました。
皆さんのご協力、ありがとうございました。
1

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