C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[6]: Re


(過去ログ 133 を表示中)

[トピック内 7 記事 (1 - 7 表示)]  << 0 >>

■78385 / inTopicNo.1)  子フォーム操作後の親フォームのデータ再読み込みについて
  
□投稿者/ straf (14回)-(2016/01/12(Tue) 03:12:09)

分類:[C#] 

2016/01/12(Tue) 03:14:50 編集(投稿者)
2016/01/12(Tue) 03:12:24 編集(投稿者)

Visual Studio 2015を使いC#で開発を行っております。

親フォームの
public partial class form1 : Form
{
の後すぐに、
string name1 = Properties.Settings.Default.Name1;
とし、子コントロールで使えるようにしていたのですが、フォーム表示中に子フォームでProperties.Settings.Default.Name1の内容を書き換えたときに親フォームの親コントロールの内容を再読み込みさせたいのですがやり方がわからず困っております。
記述方法がわかる方いらっしゃれば教えていただきたいと思います。
引用返信 編集キー/
■78386 / inTopicNo.2)  Re[1]: 子フォーム操作後の親フォームのデータ再読み込みについて
□投稿者/ 774RR (363回)-(2016/01/12(Tue) 06:47:02)
子 Form を ShowDialog してるんだったら DialogResult.OK なときに再ロード関数を呼ぶだけ

using(Form2 form2 = new Form2())
{
    if (form2.ShowDialog(this) == DialogResult.OK)
    {
        this.ReloadResources();
        this.Invalidate();
    }
}

ReloadResources() は適宜実装。

引用返信 編集キー/
■78416 / inTopicNo.3)  Re[2]: 子フォーム操作後の親フォームのデータ再読み込みについて
□投稿者/ straf (15回)-(2016/01/12(Tue) 20:39:44)
No78386 (774RR さん) に返信
> 子 Form を ShowDialog してるんだったら DialogResult.OK なときに再ロード関数を呼ぶだけ
> 
> using(Form2 form2 = new Form2())
> {
>     if (form2.ShowDialog(this) == DialogResult.OK)
>     {
>         this.ReloadResources();
>         this.Invalidate();
>     }
> }
> 
> ReloadResources() は適宜実装。
> 

解答ありがとうございます。しかし、記述方法がどうもわからないのでもう少しご教授願います。
namespace test
{
    public partial class form1 : Form
    {
         …
    string name1 = Properties.Settings.Default.Name1;
         …
       //プロパティ処理
        private void property_Click(object sender, EventArgs e)
        {
            property propertyobj;
            propertyobj = new property();
            propertyobj.ShowDialog();
         …
        }
         …
}
となっているのですが、子フォームを閉じた後にProperties.Settings.Default.Name1の再読み込みをしたいのです。
繰り返しとなりますが、記述方法のご教授お願いします。

引用返信 編集キー/
■78420 / inTopicNo.4)  Re[3]: 子フォーム操作後の親フォームのデータ再読み込みについて
□投稿者/ Azulean (578回)-(2016/01/12(Tue) 22:20:36)
No78416 (straf さん) に返信
> 子フォームを閉じた後にProperties.Settings.Default.Name1の再読み込みをしたいのです。
> 繰り返しとなりますが、記述方法のご教授お願いします。

必ず読み直しでいいのであれば、ShowDialog 後に textBox1.Text = Properties.Settings.Default.Name1; などと書けばよいです。
そういうことではないのであれば、もう少し具体的に書いていただいた方が良いかと。
引用返信 編集キー/
■78443 / inTopicNo.5)  Re[4]: 子フォーム操作後の親フォームのデータ再読み込みについて
□投稿者/ straf (16回)-(2016/01/14(Thu) 00:22:30)
No78420 (Azulean さん) に返信
> ■No78416 (straf さん) に返信
>>子フォームを閉じた後にProperties.Settings.Default.Name1の再読み込みをしたいのです。
>>繰り返しとなりますが、記述方法のご教授お願いします。
>
> 必ず読み直しでいいのであれば、ShowDialog 後に textBox1.Text = Properties.Settings.Default.Name1; などと書けばよいです。
> そういうことではないのであれば、もう少し具体的に書いていただいた方が良いかと。

その場合は別の子コントロールに値を与えることが出来ないので困っています。
親コントロールの最初の読み込みをもう一度することが出来ればいいのですが、私の無い頭をひねっても手動で起動しなおすか、同じコードを20行ぐらい必要なときに再読み込みさせることしか出来なかったので。


引用返信 編集キー/
■78444 / inTopicNo.6)  Re
□投稿者/ Azulean (579回)-(2016/01/14(Thu) 07:16:35)
2016/01/14(Thu) 07:18:06 編集(投稿者)

No78443 (straf さん) に返信
> 親コントロールの最初の読み込みをもう一度することが出来ればいいのですが、私の無い頭をひねっても手動で起動しなおすか、同じコードを20行ぐらい必要なときに再読み込みさせることしか出来なかったので。

それはどのように実現しているのですか?
コードを書いているのか、プロパティで Settings と結びつけているのか。

コードを書いているのであれば、その読み込み処理を別メソッド(別関数)に分けて、ShowDialog の後に呼べるようにするとことかと。
引用返信 編集キー/
■78450 / inTopicNo.7)  Re[6]: Re
□投稿者/ straf (17回)-(2016/01/14(Thu) 20:38:11)
No78444 (Azulean さん) に返信
> それはどのように実現しているのですか?
> コードを書いているのか、プロパティで Settings と結びつけているのか。

コードを書いてやってました。

> コードを書いているのであれば、その読み込み処理を別メソッド(別関数)に分けて、ShowDialog の後に呼べるようにするとことかと。

結局メソッドで動作をまとめて、子コントロールで使う場合は読み込むようにしました。
親コントロールの値を書き換える事ができればそれがよかったのですが、こちらも一行ですみますのでこの方法でいこうと思います。

このような分かり辛い質問に答えてくださり、ありがとうございました。
解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -