3

msdn (下記参照) から定義を読みましたが、役に立ちませんでした。gridviewrows を gridview に動的に追加していますが、パラメータが何なのかわかりません。

public GridViewRow(
    int rowIndex,
    int dataItemIndex,
    DataControlRowType rowType,
    DataControlRowState rowState
)

rowIndex 型: System.Int32 GridView コントロールの Rows コレクション内の GridViewRow オブジェクトのインデックス。

dataItemIndex 型: System.Int32 基になる DataSet 内の DataItem のインデックス。

rowType 型: System.Web.UI.WebControls.DataControlRowType DataControlRowType 列挙値の 1 つ。

rowState 型: System.Web.UI.WebControls.DataControlRowState DataControlRowState 列挙値のビットごとの組み合わせ。

4

2 に答える 2

1

これらのパラメーター (およびこのコンストラクター全般) を使用する必要はほとんどありません。これらは GridView を作成するためのものであり、行は完全に手動で作成されます。このコントロールに組み込まれている強力なデータ バインディング機能を考慮すると、かなり不要なものです。説明させてください。

一般に、データソース (DataTable、カスタム クラスの汎用リストなど) を作成し、そのデータソースを GridView に割り当ててバインドする必要があります。これにより、RowIndex や DataItemIndex の設定などが自動化されます。また、その他の便利な機能 (並べ替え、ページング、編集/削除) も使用できます。この既定の機能の詳細については、GridView Web サーバー コントロールの概要 に関するページを参照してください。

したがって、新しい行をデータソースに追加し (それが何であれ)、更新されたデータソースを GridView の DataSource プロパティに設定し、GridView.DataBind(). 新しい行が作成され、GridViewRow オブジェクトを手動で作成する必要はありません。

しかし、あなたの質問に答えるには:

  • int rowIndex: 作成している行が GridView で占めるインデックス (位置)。
  • int dataItemIndex: 基になるデータ ソース内のこのデータのインデックス (DataTable またはジェネリック リスト、またはそれが使用しているもの)。
  • DataControlRowType rowType: これは行のタイプです - データ、ヘッダー、フッターなどを含む行 (完全なリストはこちら)。
  • DataControlRowState rowState: 行の「状態」 - 編集モード、読み取り専用モードなど (完全なリストはこちら)。
于 2013-04-04T13:33:38.860 に答える