• ベストアンサー

GridViewで列のソートを無効にしたい

お世話になります、VB.NET2005です。 GridViewで、列ヘッダをクリックするとソートがかかるところを無効にしたいのですが、どのように設定したらいいか分かりません。 できれば列ヘッダをクリックできないように設定したいのですが・・・。 列ヘッダだけEnableをFalseみたいな事ってできますでしょうか?

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

  • ベストアンサー
回答No.1

こんにちは DataGridViewのcolumnsプロパティをクリックして 該当するカラムのSortModeをNotSortableに設定すればソートしません。

utugi_taro
質問者

お礼

できました、助かりました。 ありがとうございます。

関連するQ&A

  • vb.netにてgridviewのソート

    vb.netにてgridviewのソートについてアドバイスをお願いいたします。 webページにてgridviewを使用しDBの内容を表示しております。 gridviewにテンプレートフィールドとしてチェックボックスを追加し、すでに登録されている(別DB内に格納)しているものにはチェックをつけております。 現在、マスタとなるDBから読み込んだ並びで表示されているところを チェックボックスがTRUEの行を昇順にて表示させることは可能でしょうか?

  • Gridviewの並べ替えについて

    SqlDataSourceを設定したGridviewを作成しました。 GridviewのAllowSortingは"true" を設定し、ユーザが並べ替えできる設定にしました。 再表示ボタンをクリックすると、ユーザが行った並べ替えをクリアし、 Gridview読み込み時の初期状態の並び順に戻したいのですが、 ボタンのクリック時にどのように記述すればよろしいですか? GridviewをDataBindしたのですが、ユーザーがクリックした列の並び替えが初期化されません。 ご教授お願いします。

  • データグリッドの列見出しソート禁止で

    いつもお世話になります。 VB.NET2003+Access2000環境です。 データグリッドを使用してデータを入力しているのですが、ちょっと要望が出てきまして試したのですがうまくいきません。 お知恵を貸してください。 通常、複数行のデータがある場合、データを入力してから列見出しをクリックするとそれをキーにソートされますよね。 これを禁止するために datagrid1.AllowSorting = False を記述しました。 結果目的は達成されているのですが、データが1行だけの場合、しかも全ての列の入力が終わっておらない状態の時にどこかの列見出しに当たってしまうと入力データが消えてしまいます。 複数行あれば問題ないのですが、一行だけあるいは入力途中の時点でもソート禁止にする方法はないものでしょうか? よろしくお願いします。

  • GridViewのボタンの高さ

    vb.net(vs2005) asp.net GridViewのボタン(buttonfield)の高さを変えられないでしょうか。 ×リンク(文字列に変更し、フォントサイズを小さくする。) ×テンプレート列 以外でお願いします。 つまらないところで、困っています。(表が大きいので…)

  • 【ASP.NET】GridViewのヘッダについて

    【ASP.NET】GridViewのヘッダを固定しつつ横スクロールもさせたいと考えています。 環境 OS:Windows XP Professional Edition Visual Studio 2005、ASP.NET2.0 Ajax Extention 1.0 ヘッダを固定させているGridViewがあります。 (固定方法を参考にしたサイト⇒http://blogs.yahoo.co.jp/ogiwara_hsk/32105274.html) これで固定できたGridViewをブラウザ上で見ていると一見何の問題もないのですが、 ブラウザの幅をGridViewの幅より狭くしたときに問題が起こりました。 ブラウザの幅をGridViewより狭くした場合、GridViewの下にスクロールバーが出て、それをスライドさせれば隠れてしまった部分を見ることができますが、その時ヘッダは一緒にスライドしてくれません。 ヘッダの固定する処理をなくせば当然一緒にスクロールしてくれますが、それだとヘッダの固定がされていないのでGridViewの右にある縦スクロールを下にずらすとヘッダがなくなってしまいます。 理想では、ヘッダを固定して縦スクロールをしてもヘッダが残り、かつ横にスクロールさせた時にはデータだけでなくヘッダも一緒にスライドしてほしいのです。 これはヘッダの「固定」をしてしまっているから無理なのでしょうか。 もし一緒に動かせる方法があれば教えてください。 よろしくお願いいたします。

  • ASP.NET 2.0(C#) GridViewのソート機能をデフォルトで降順にしたい

    GridViewコントロールで「並べ替えを有効」にすると、各フィールドごとに、ヘッダーのリンクをクリックするたびに昇順→降順でソートできるようになりますが、これをあるフィールドだけ、降順→昇順にすることはできないでしょうか? GridView1のSortingイベントで protected void GridView1_Sorting(object sender, GridViewSortEventArgs e) { //hogeフィールドだけデフォルトで降順にしたい if (e.SortExpression == "hoge") { if (e.SortDirection == SortDirection.Ascending) e.SortDirection = SortDirection.Descending; else e.SortDirection = SortDirection.Ascending; } } などとしてみたのですが、これでは常に降順になってしまいます。 よろしくお願いします。

  • スプレッドでのソート

    スプレッドでソートを行いたく、列と行の設定でヘッダの動作を『ソート』にしたのですが、以下の問題が生じました。 件数 1 2 3 10 15 20 ↓ ソートすると 1 10 15 2 20 3 セル型を『数値』に設定しても同じ結果になります。 きちんと1,2,3,10,15,20と昇順にソートさせるにはどうすればよいでしょうか。 ご教授願います。

  • SpreadDesignerの列ヘッダ

    いつもお世話になっております。 スプレッドシートの列ヘッダを固定表示(ロック)したいのですが、うまくいきません。 ヘッダをクリックしてコピーをすると、選択した列のコピーをして、同じように他の列を選択して張り付けるとヘッダまで編集されてしまいます。 そのために With Spread .BlockMode = True .Col = -1 .Col = 0 .Lock = True .BlockMode = False End With としていますが、ヘッダ部分ではなくセル自体にロックがかかってしまいます。 ヘッダは編集不可にして、セルは編集可能にしたいのですが、コードで設定できるでしょうか? プロパティからでもできるのであれば、どのような方法がありますでしょうか? お分かりの方、お教え願います。

  • Gridviewについて

    Gridviewについて お世話になります。 オラクル11gと.NET C#で開発しています初心者です。 ストアドで呼び出した、データをGridviewに表示させて いるのですが、データ量が多く、日付を持っている列があり、 日付順に上から並んでいます。つまり、最新データは一番下にあり 毎度、最下段までpagedownしてられないとユーザーから言われて いる状態です。 表示時に最下段を表示させたいのですが、方法が分かりません。 どなたかご教授頂きたく、宜しくお願い致します。

  • DataGridViewのソートを止めたい

    いくつか同じ質問は見受けられましたが、自分の環境ではどれも解決に至っていなく困っていますので、質問させてください。 DataGridViewのDataSourceにDataTableを設定して使っています。 このDataGridViewは、編集もできソートもできます。ただ、ソートは、ヘッダをクリックした時など、ユーザーが意図したときだけ起きて欲しく、例えばソート列の値を編集したときなどに、勝手に位置が変わってしまします。 これを、止める方法はないのでしょうか。しかも、それまでに任意のソートを繰り返した後の、編集を加える直前の順番を保ったままです。 ソートを解除するという方法がありましたが、ユーザーが編集直前までに整えた順番をクリアして、最初の状態に戻してしまいます。それでは、都合が悪いのです。 本当に困り果てています。どうか、分かる方教えていただけませんか?

専門家に質問してみよう