0

メイン フォームを持つ Windows フォーム プロジェクトがあります。新しいフォームを開く textbox leave イベントがあります。その新しいフォームの読み込みイベントには、コンボボックス項目を設定するコンボボックス項目ループがあります。メインフォームで実行すると完全に機能しますが、2番目のフォームでは機能しません。メイン フォームからの textbox_leave イベントを介してそのフォームを開いたときに、セカンダリ フォームのコンボボックスが表示されないのはなぜですか? 脱退イベントです

 Private Sub tbChartTitle_Leave(sender As Object, e As System.EventArgs) Handles tbChartTitle.Leave
    If Not tbChartTitle.Text = Nothing Then
        frmTitleAttributes.Show()
    End If
End Sub

これは、2 番目のフォームのコンボボックスの 1 つを設定するコードです (メイン フォームのコンボボックスで実行すると機能します)。

 Private Sub frmTitleAttributes_Load(sender As Object, e As System.EventArgs) Handles Me.Load
    InitializeComponent()
    AddFonts()
End Sub
Private Sub AddFonts()
    ' Get the installed fonts collection.
    Dim allFonts As New Drawing.Text.InstalledFontCollection
    ' Get an array of the system's font familiies.
    Dim fontFamilies() As FontFamily = allFonts.Families

    ' Display the font families.
    For i As Integer = 0 To fontFamilies.Length - 1
        cbxTitleFonts.Items.Add(fontFamilies(i).Name)
    Next
End Sub
4

1 に答える 1

0

フォームを表示した後にハンドラーがヒットしていることを確認してLoadください (ブレークポイントを使用)

Shownまた、イベントで呼び出すこともできます

Private Sub frmTitleAttributes_Shown(sender as Object, e as EventArgs) _ 
     Handles frmTitleAttributes.Shown

   AddFonts()

End Sub
于 2012-05-09T08:06:49.410 に答える