2012-04-17 8 views
2

誰でも私の中にlinklabelを含むカスタムdatagridview列コントロールを作成する作業例を教えていただけますか? まず、同じセルに複数のクリック可能なリンクが必要なため、LinkColumnを使用することはできません。インターネット上で見つかった例(私を信頼して、私は何時間も探してきました)は、私の知識の不足のために正確には役に立たないのです。 私は、このモックアップのような何かを達成する必要があります:Aさんのファイル2、C#、Windowsフォーム、LinkLabel列

| People | Files   | 
|----------|------------------| 
| Person A | File 1, File 2 | 
| Person B | File 1   | 

ファイル1を、すべてが別個のURLであり、カスタムテキスト、単に「ファイル1」のための必要はありませんBさんのために1ファイル、 "File 2"などです。理想的な状況は、カスタムセルがリスト< \ string> UrlListのようなパラメータでデータバインドできるかどうかです。リストの要素は、そのダウンロード場所を示すURLになりますファイルは、適切なファイルをクリックするとブラウザウィンドウで起動します。 誰かが私にそれを手伝ったり、マイクロソフトから提供されているカレンダー列の例よりも近くに私を指差してくれる人はいますか?

+0

私はしたくありません。私はこの問題にどう対処するか分からないので、何をすべきかに関する一般的な指示が必要です。私はカスタムセル/列ホスティングを作成する必要があることを知っています - 何がベストです - 自分のusercontrol。しかし、それを効率的に行う方法の例は基本的にありません。私が見つけた唯一のサンプルは、マイクロソフトのサイトからダウンロードすることさえできません。他のカスタムセルは、常にtextboxcellコントロールから派生しています。私はそれが私が必要としているかどうかはわかりません。 – yas

+0

あなたはそれらを別の列に入れませんか?またはコンボボックスを使用しますか?たとえそれをテキスト列に入れても、どのテキストがクリックされたかを知る方法はありません。 – Akanksha

+0

そのため、私はlinklabelコントロールに傾いています。これは、1つのラベルの下に別個のリンクをホストするために使用できます。バインドされたデータテーブルがプログラムによって生成され、最大可能リンクの数が何であるかわからないため、異なる列はあまり使用されません。 – yas

答えて

0

あなただけの1行を選択すると次の2つの異なるデータグリッド

を持つことができますちょうどあなたの人々の列から値を取得し、他に記入のセルをクリックしてイベントで、すべてのファイル

と他のデータグリッドを埋めますグリッドに関連付けられたファイルを表示します。

あなたは、あなたがこのような何かでそれを開くことができますしたいファイルを持つセルをクリックしたときには、この DataGridView1.SelectedRows(0).Cells(0).Value

を使用して値を取得することができます。

String webAddress = "http://www.google.com/" 
Process.Start(webAddress) 
関連する問題