为什么我不能在表单显示之前在VB.net中设置下拉列表的选择?

时间:2015-01-20 21:58:46

标签: vb.net dropdownbox

我似乎无法让Visual Studio 2010让我在屏幕上显示表单之前设置下拉列表的SelectedItem或SelectedIndex属性。如果我等到可以看到表格,我可以毫无问题地设置这些,所以我不确定问题是什么。这是我的代码。

Private Sub Test_Program_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    For each item in System.IO.Directory.GetFiles(Application.StartupPath + "\Pictures\")
        dd_pics.items.add(item)
    Next
    dd_pics.SelectedIndex = 0
    background = dd_pics.SelectedIndex
End Sub

background是一个整数变量。我试图将SelectedIndex更改为SelectedItem并将背景变量类型更改为字符串,但这没有帮助。稍后在代码中,我使用背景变量根据它从上面的代码引用的文件来设置图片。我没有收到错误,但似乎Visual Studio正在跳过行dd_pics.SelectedIndex = 0和Sub中的所有连续行。我发现这个是因为当我尝试将此处引用的图片设置为PictureBox并且调试器告诉我在我尝试将PictureBox设置为的变量中没有任何内容时,我实际上遇到了错误。我可以在按钮中使用完全相同的代码,它工作正常。我能找到的唯一区别是表单已完全加载,我必须单击此处自动化的按钮。任何人至少可以告诉我Visual Studio何时出现此问题或可能如何修复它?任何帮助是极大的赞赏。提前谢谢。

1 个答案:

答案 0 :(得分:0)

我通常在构造函数中执行这些操作:

Public Sub New()

  ' This call is required by the designer.
  InitializeComponent()

  ' Add any initialization after the InitializeComponent() call.
  For each item in System.IO.Directory.GetFiles(Application.StartupPath + "\Pictures\")
    dd_pics.items.add(item)
  Next
  dd_pics.SelectedIndex = 0
  background = dd_pics.SelectedIndex
End Sub

这适用于您的情况吗?