GridviewとDataGridviewの違い

このQ&Aのポイント
  • GridviewとDataGridviewの違いを解説します。Visual Web Developer 2010を使用して社内用の簡単なwebアプリケーションを作成している方へのアドバイスです。
  • DataGridViewとGridViewの違い、DataGridViewを使用したコードの参考にしたい場合の注意点、DataGridViewの使い方などについて解説します。
  • DataGridViewを設置する方法やGridViewでDataGridViewのコードを参考にして動くようにする方法についてお答えします。ご参考にしてください。
回答を見る
  • ベストアンサー

GridviewとDataGridviewの違い

visual web developer2010を使用して 社内用の簡単なwebアプリケーションを作成しています。 DataGridViewとGridViewの違いは やっとのことでなんとなく分かったのですが (GridViewはDataGridViewの進化版?) 自分のやりたいことをネットで検索してコードを探すと そのほとんどがDataGridViewを使用したものです。 Clipboard.SetDataObject(DataGridView1.GetClipboardContent()) たとえば上記のような感じです。 これをGridViewで使えるようにしたくて 自分なりにコードを書き換えたりしてみるのですが (DataGridView1をGridView1にしてみたり、 DataGridView1をMe.DataGridView1にしてみたりしています) すべてエラーになってしまいます。 だったらDataGridViewを設置したいと思うのですが ツールバー内にDataGridViewはあるものの 色が薄くなっていて(グレーアウトみたいな感じです)選択できない状態です。 GridViewで、DataGridViewのコードを参考にして 少し書き換えれば動くようなことはないのでしょうか? または DataGridViewが使える方法を教えてください! ご教授お願いいたします!

質問者が選んだベストアンサー

  • ベストアンサー
  • onos
  • ベストアンサー率81% (127/155)
回答No.1

> DataGridViewとGridViewの違いは > やっとのことでなんとなく分かったのですが いや、この書き込みをみる限りではわかってないと思いますよ。 DataGridView:  Windowsアプリケーション用のGridコントロール。  Webでは使えません。 GridView:  Webアプリケーション用のGridコントロール。  Webなので、最終的にはHTMLに変換されます。 この一番基本的な違いがわかってないと思います。 > 自分のやりたいことをネットで検索してコードを探すと > そのほとんどがDataGridViewを使用したものです。 Webアプリケーションの場合、すべてHTMLに変換されますから、 システムの動作はHTMLをベースに考える必要があります。 やりたいことを考えるうえで、HTMLだとどう動かせばよいか、 というところから学習するのがよいかと思います。

masunona
質問者

お礼

ご回答いただきありがとうございます! 本当にまったく理解できていないですね。。。 もう何週間もこの疑問で詰まってしまっていましたが とてもスッキリしました! 勉強しなおします! ありがとうございました!

関連するQ&A

  • GridViewコントロールで列を固定するには?

    DataGridViewの場合、以下のサイトに説明があったのですが、 http://www.atmarkit.co.jp/fdotnet/dotnettips/509dgvfrozen/dgvfrozen.html GridViewを使用している場合、 grdList.Columns(2).Frozen = True と記述すると、エラーとなります。 「'Frozen' は 'System.Web.UI.WebControls.DataControlField' のメンバではありません。」 GridViewではどのように記述するのでしょうか?

  • DataGridViewで…

    初めまして、VB2005初心者のココと申します。 今、VB2005を使い開発しているのですが、詰まってしまいました。 初心者の為、くだらない内容かも知れませんが、ご教授よろしくお願いいたします。 セルに入力されたコードを元にDBから名称を抽出し、名称欄(セル)に表示するプログラムを作っています。 コードを入力し、セルからフォーカスが無くなった際に自動的に名称を表示させたいのですが、うまく表示されず、 現在は、別のセルから戻った後、フォーカスが移動されると表示されるような感じになってしまっています。 フォーカスが離れた際に、表示させればいいと思うのですが、どのようにすればいいのかよく分からず困っております。 今は、CellLeaveを使用しています。 Private Sub DataGridView1_CellLeave(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) _ Handles DataGridView1.CellLeave 後、名称取得の際はこんな感じにしています。 名称取得(Val(DataGridView1(1, DataGridView1.CurrentCell.RowIndex).Value)) ※1がコードを入力する列になります。 よろしくお願いいたします。

  • GridViewのDropDownLisについて

    よろしくお願いします ASP.NET(Microsoft Visual Basic 2010)で開発をしております。 GridViewにDropDownLisを配置しているのですが、 リストを選択したときの、GridViewの行(row)を取得する方法が分かりません。 OnSelectedIndexChangedを使用すると変更時のイベントを拾えて リストボックスの内容を取得出来るところまでは調べたのですが、 変更したリストボックスと同じ行にある別の項目の値を取得する 必要があるのですが、その方法が分かりません。 変更した行番号が分かれば「gridView.Rows(3).Cells(3).Text」で 値の取得は出来るのかな?と考えました。 なので、目的は同行の値の取得なので、もし行数が分からなくても 構いません。 自分なりには、かなり調べたつもりなのですが、どうしても答えを 導けず困っています。 お分かりの方がありましたら、是非ご教授頂ければ幸いです。 よろしくお願い致します。

  • GridViewのデータソースの入れ方がわかりません

    OleDb.OleDbDataAdapter' が定義されていません DataSet' が定義されていません。 OleDb.OleDbConnection' が定義されていません。 OleDb.OleDbDataAdapter' が定義されていません 以上の エラーが出ます 定義の、意味がわかりません 教えてください お願いします WinXP Microsoft Visual Web Developer 2008 ASPX Protected Sub Button2_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button2.Click Dim dAdp As OleDb.OleDbDataAdapter Dim dSet As DataSet = New DataSet("顧客台帳") Dim cn As OleDb.OleDbConnection = New OleDb.OleDbConnection( _ "Provider=Microsoft.Jet.OLEDB.4.0;" _ & "Data Source=C:\*******\*****.mdb;") 'データセットに取得し、DataGridViewに関連付ける dAdp = New OleDb.OleDbDataAdapter("SELECT * FROM 顧客台帳", cn) dAdp.Fill(dSet, "顧客台帳") Me.GridView1.DataSource = dSet.Tables("顧客台帳") End Sub

  • GridViewのButtonフィールドの使い方

    環境:visual web develper 2008 Express Edition GridViewタスク→列の編集→フィールド→「使用できるフィールド」からButtonFieldを選択→Button Typeを「Button」に設定、Textは「削除」→「OK」を押す 以上の流れで削除ボタンの列がGridView内に表示されますが、「削除ボタン」を押しても何も起こりません。 削除ボタンをクリックされたときにこちらが決めた処理を行わせるにはどうすればよいでしょうか? ツールボックスのButtonですと、 Protected Sub sakujyo_Click(ByVal sender As Object, ByVal e As EventArgs) Handles bookNameSyoujyun.Click    End Sub でボタン(sakujyoボタン)を押したときの処理がかけますが、このような書き方はできないのでしょうか? 現状だとGridView内にあるボタンのIDがわからないため、○○○_Clickの○の部分に何を書けばいいのかわかりません。 ご助言よろしくお願いいたします。。

  • データソースの非活性化について

    Visual Web Developer を初めて使うのですが、どうも使い勝手が判らず困っています。 データベースの値をGridViewに表示するために、sqlDataSourceにSQLを書いて表示するまではわかったのですが、初期画面で、sqlDataSourceを非活性化(定義してあるデータのアクセスを止める)することはできないのでしょうか? AccessだとActivateというようなプロパティがあって、ボタンを押すなどのタイミングで活性化、非活性化をすることができたような記憶があるのですが、Visual Web Developer ではこのようなプロパティ、メソッドはあるのでしょうか? 初歩的な質問だと思いますが、ネットを調べても判らなかったので教えて頂ければ幸いです。

  • SqlDataSourceについて

    現在Visual Web Developer 2008で開発を行っています。 そこで質問なのですが、DBよりSqlDataSourceを通してテーブルデータを読み込み、GridViewにて表示させています。 しかし、そのテーブルを結合しなくてはならなくなりました。この場合SqlDataSourceには複数のテーブルを選択することは出来ないのでしょうか? また出来ない場合はカスタムにしてSELECTタブにjoin等で結合したSQL文を書くことになるのでしょうか?それともコード上に記載するのでしょうか? よろしくお願いいたします。

  • datagridviewに表示されるデータの識別

    visual studio2010とaccessのデータ(MDB)を使用してプログラムを作っています。 フォームにdatagridviewを1つ配置し、ボタンを2つ用意します。 datagridviewにはデータをバインドせず、2つあるボタンそれぞれに表示するプログラムの記述をし、ボタンを押下することで表示させるようにしています。 ここからが不明な点なのですが、この2つあるデータを、datagridviewのダブルクリックによって別の登録画面を表示し、データの更新や削除をおこなったり、データの新規登録を行いたいのです。 が、2つあるデータを区別させるプログラムの記述がわかりません。 当方は勉強中の身なので、それが可能なのかすら正直わかりませんが、 可能であればプログラムでデータを識別させるコードを教えていただけないでしょうか。 ネットで調べたのですが似たようなものをまず見つけられず、よくわかりませんでした。 よろしくお願いいたします。

  • Visual Web Developer Express Edition で作成したWebアプリケーションについて

    「Visual Web Developer 2005 Express Edition」でWebアプリケーションを作成し、Webサーバーに配置しようとしたところで躓きました。 ヘルプを見ると「Web サイトの発行ユーティリティは、Visual Web Developer Express Edition では使用できません。」となっていますが、もしかして「Express Edition」ではアプリケーションの公開ができないということでしょうか? そこそこ時間をかけて作成しており、やっと完成したところなので無駄にはしたくありません。 ちなみに社内用に作成したWebアプリケーションで、外部公開用ではありません。 何か方法はありませんでしょうか? 宜しくお願いします。

  • DataGridView 複数選択で行番号の取得

    Visual Basic 2008 を使っています。 DataGridViewで複数の行を選択したとき、それぞれが何行目なのかを取得するにはどうしたらいいでしょうか? 具体的には、複数選択されている行の0列目の値をテキストボックスに表示するという動作を行いたいです。 自分で書いたコードをペーストしておきます。 Dim count As Integer = Me.DataGridView1.SelectedRows.Count For count = 0 To count - 1 Dim test As String test = Me.DataGridView1.Rows(?何行目か).Cells(0).Value Me.TextBox4.Text = test & "が選択されています。" & vbCrLf & zenkai Dim zenkai As String = Me.TextBox1.Text Next

専門家に質問してみよう