-1

問題:

パネルのサイズを変更して保存したいので、次回プログラムを開いたときにパネルのサイズが保持されます。このため、私はなんとかmy.settingsタイプで使用することができますsystem.drawing.size

ただし、変換に問題があるため、最初にデフォルトのサイズを出力できますmy.settings

My.Settings.pnl_service_size = Tb_Pnl_Service_Size.Text

エラー 1 'System.Drawing.Size' 型の値を 'String' に変換できません。

my.settings の使用方法を認識しています。これを変換するのに苦労しているので、textbox.text に出力できます。

編集:

テキストボックスへの入力方法は次のとおりですOnLoad event

Tb_Pnl_Service_Size.Text = My.Settings.pnl_service_size.ToString 'I populate the textbox
Pnl_Service.Size = New Size(My.Settings.pnl_service_size) 'The panel that I want to change the size

テキストボックスを保存する方法は、OnClicked button

My.Settings.pnl_service_size = Tb_Pnl_Service_Size.Text.ToString
My.Settings.Save()
4

2 に答える 2

1

重要な情報は、 の値に対する変数の型ですMy.Settings

My.Settings.pnl_service_size = Tb_Pnl_Service_Size.Text.ToString

これにより、文字列のように見えます。問題は、これが次のようなものを保存することです: {Width=237, Height=133}これは簡単にSize変数に変換できません。

で使用されている Type が の場合、Settings文字System.Drawing.Size列に変換して保存する必要はありません。

My.Settings.pnl_service_size = Pnl_Service.Size

次回サイズをリセットします。

Pnl_Service.Size = My.Settings.pnl_service_size

を使用して値を表示できます.ToString()が、結果がStringであるため、 として使用することはできませんSize

TextBox1.Text = My.Settings.pnl_service_size.ToString()
于 2015-09-14T13:48:24.073 に答える
0

特定のオブジェクトのサイズを示すためにテキストボックスを使用することはできないようです。

のタイプをmy.settingsからsystem.drawing.sizeに変更しましstringた。これが私の使い方です。

実行中のテキストボックスへの入力OnLoad event

'I populate the textbox
Tb_Pnl_Service_Size.Text = My.Settings.pnl_service_size 

'The panel that I want to change the size
Dim pnl_size As Array = Split(My.Settings.pnl_service_size, ",", 2)
Pnl_Service.Size = New Size(pnl_size(0), pnl_size(1)) 

を押して保存textboxするmy.settingsOnClicked button

My.Settings.pnl_service_size = Tb_Pnl_Service_Size.Text
My.Settings.Save()
于 2015-09-15T01:15:56.770 に答える