これは重複している可能性がありますが、私は必要なものを正確に見つけることができません。私は、私はいくつかのものを行うには、リストVEWでいくつかのサブフォームを作成し、そこからメインフォームを、持っている静的クラスからフォームを更新するにはどうすればよいですか?
サブフォームコードです
:ここ
は私の問題である。public partial class AccessGroupForm : Form
{
public AccessGroupForm()
{
InitializeComponent();
}
public void Fillitems(PackageGroup[] pack)
{
foreach (var assignment in pack) //filling the listview
{
list_view.Items.Add(assignment.Name).SubItems.Add(assignment.Id.ToString());
}
}
とこのフォームをロードするための静的クラス:
public static class AGView
{
public static void Load(PackageGroup[] pack)
{
access_group = AG;
AccessGroupForm AGform = new AccessGroupForm();
AGform.StartPosition = FormStartPosition.CenterParent;
AGform.Fillitems(pack);
AGform.ShowDialog();
}
}
今私が持っているしたいものです例えば、ボタンを押すと、この静的クラスを経由して、フォームを更新できるようにするには:
private void UpdateMeToolStripMenuItem_Click(object sender, EventArgs e)
{
AGView.UpdateMe()
}
は、どのように私は私がAGView.Load(pack)
方法で作成したまったく同じフォームにアクセスできますか? ありがとうございます!
主な検索用語:「C#チュートリアル」静的クラスにはまだ静的メンバーがあります。つまり、外部モデレータ/静的クラスに頼るのではなく、フォーム間のインタフェースを定義し、それを供給する方がきれいになるでしょう。 – user2864740
私は静的メソッドから作成したフォームを返し、*どこかに*保存し、それを使用して更なる更新を管理します。 –