0

コンボボックス項目を追加して、モジュール内の他のコントロールを使用したいのですが、そこでコンボボックスを使用しようとすると、認識されません。Window Form Application では問題なかったのですが、WPF アプリケーションではどうすればいいのかわかりません。

WinForm アプリでは、Module.vb でそのようなことを行います

 Sub FillComboBox()

        Dim SQLStr As String = "use testowa Select COLUMN_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE (TABLE_NAME = 'Import')"
        Dim Reader As SqlDataReader
        Dim cmd As New SqlCommand(SQLStr, myConnection)

        Form2.ComboBox7.Items.Add("None")
        Form2.ComboBox3.Items.Add("None")


        Reader = cmd.ExecuteReader()

        While Reader.Read()
            Form2.ComboBox1.Items.Add(Reader.Item("COLUMN_NAME"))
            Form2.ComboBox2.Items.Add(Reader.Item("COLUMN_NAME"))
            Form2.ComboBox4.Items.Add(Reader.Item("COLUMN_NAME"))
            Form2.ComboBox5.Items.Add(Reader.Item("COLUMN_NAME"))
            Form2.ComboBox6.Items.Add(Reader.Item("COLUMN_NAME"))
            Form2.ComboBox7.Items.Add(Reader.Item("COLUMN_NAME"))
            Form2.ComboBox3.Items.Add(Reader.Item("COLUMN_NAME"))
        End While

        Reader.Close()


    End Sub

今、私はWPFアプリで同じことをする必要があります.

助けてください、これらはWPFでの私の最初のステップです:)

4

2 に答える 2

1

パターンを示す簡単な例を次に示します。

XAML:

<Window x:Class="EmptyWPF.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" MinWidth="200">
    <Grid>
        <ComboBox ItemsSource="{Binding myList}" />  
    </Grid>
</Window>

MainWindow.cs:

public partial class MainWindow : Window
{
    private List<string> _mylist;
    public List<string> myList
    {
        get
        {
            return _mylist;
        }
        set
        {
            _mylist = value;
        }
    }

    public MainWindow()
    {
        InitializeComponent();
        _mylist = new List<string>() { "Item1", "Item2", "Item3" };
        DataContext = this;
    }
}

アプリケーションの実行中にコレクションを変更する必要があり、コンボボックスを変更に対応させたい場合は、リストの代わりにObservableCollectionを使用してください。

WPFに触れたことがない場合の出発点としては、www.wpftutorial.netが適しています。

于 2012-10-25T13:31:47.487 に答える
1
  • SQL からコレクション (例: 文字列のリスト) を埋めます
  • このコレクションをコンボボックスの ItemsSource として設定します

それで全部です

ps: pls は、wpf でのバインドについて何かを読んでください。wpf で winform スタイルをコーディングしようとしないでください。

于 2012-10-25T13:21:43.833 に答える