1

私はVisualBasicを初めて使用し、チャットインターフェイス用の優れたGUIの開発を回避しようとしています。私はかなり前からphpとjavaを使用しているので、言語を理解することができます。

要件

基本的に、私はユーザーのリストを表示し、それに加えてステータス(オンライン/オフライン)を表示するインターフェースを開発しようとしています。私のユーザーはmysqlデータベースに常駐します。ユーザーをクリックすると、いくつかのアクションが発生します。

質問

datagrid、listview、listboxがあるようですが、どれを使用すればよいかわかりません。また、mysqlデータベースを直接検索するか、いくつかのクエリを実行してデータを提供するphpスクリプトにアクセスすることにより、ユーザーを表示することをお勧めしますか?

4

1 に答える 1

1

ListBoxコントロールは、複数の列を簡単にサポートしないため、優れたオプションではありません。詳細ビューのListViewコントロールは優れたオプションです。見た目も動作もDataGridよりも優れていると思いますが、複数行のアイテムをネイティブにサポートしていません。複数行のアイテムが必要な場合は、DataGridコントロールが最適な選択です。柔軟性を高めるもう1つのオプションは、LayoutPanelコントロールを使用して、独自のUserControlの垂直リストを表示することです。とにかくUserControlを設計できます。つまり、リストコントロールに制約されることなく、リスト内の各アイテムのサイズ、外観、およびレイアウトを完全に制御できます。

データを取得する限り、それは異なります。データベースが常にLAN上にあり、パフォーマンスが重要な場合は、各クライアントがデータベースに直接アクセスする必要があります。それ以外の場合は、phpスクリプト、Webサービス、またはWCFサービスからデータを取得する方がはるかに適切です。

TableLayoutPanelを使用するのではなく、FlowDirectionプロパティをTopDownに設定し、AutoScrollプロパティをTrueに設定してFlowLayoutPanelを使用することをお勧めします。次に、コントロールを動的に追加するには、次のようにします。

Dim item As New MyUserControl()
' Set properties of user control
FlowLayouPanel1.Controls.Add(item)
于 2012-11-22T12:18:20.957 に答える