2

こんにちは、再び y は 1 つのボタンの配列を使用してデータテーブルにデータを入力しました。次のボタン 2 はデータテーブルを Excel に送信するため、これは C# と asp.net を使用して行われます。両方のボタンで使用できます

    System.Data.DataTable _myDataTable =new System.Data.DataTable();

ボタン 1 データテーブルを埋める: この例では、10 列のみとします。caract=セルの数

for (int k=0; k < 10; k++) 
{
    _myDataTable.Columns.Add();   
}

for (int j=0; j < 10; j++)
    {       
    TableRow r = new TableRow();
    System.Data.DataRow row=_myDataTable.NewRow();
    for (int i = 0; i < caract+1; i++)
    {
        row[i]=(datar[j,i].ToString());
    }
    _myDataTable.Rows.Add(row);
    Table1.Rows.Add(r);
    }

ボタン2は、データテーブルからExcelにデータを保存したい場合にユーザーに許可しますが、最初にデータテーブルが空かどうかを確認します

if(_myDataTable !=null || _myDataTable.Rows.Count == 0)
    {

    string name="productos";
    Label2.Text="it has data";
            }
           else{Label2.Text="NO data"; }

いいえ、データ yupi があるというテキストを受け取りましたが、ボタン 2 を押してデータ テーブルを Excel に送信すると、ドキュメントが作成されますが、空です。次に試したいのは、セルごとに検証することです。あるはずのデータがありますが、データテーブルからデータを抽出してラベルに表示する方法がわかりません。どんな助けにも感謝します

4

3 に答える 3

8

あなたのif状態は、いくつかの点で間違っているように見えます。

これは私がそれをコーディングする方法です:

if(_myDataTable !=null && _myDataTable.Rows.Count > 0)

上記_myDataTableは、有効なオブジェクトであり、値が含まれている場合を意味します。

于 2012-07-04T19:24:38.853 に答える
0

JUAN では、DataTable をグローバル スコープで定義できます。その後、両方のボタン イベント ハンドラーで使用できます。

例えば:

namespace WebApplication1
{
    public partial class _Default : System.Web.UI.Page
    {
        private DataTable _myDataTable;
        public DataTable MyDataTable { 
            get 
            {
                return _myDataTable;
            } 
            set
            { 
                _myDataTable = value;
            } 
        }
    protected void Button1_Click(object sender, EventArgs e)
    {
        for (int k=0; k < 10; k++) 
        {
            MyDataTable.Columns.Add();   
        }

        for (int j=0; j < 10; j++)
        {       
            TableRow r = new TableRow();
            System.Data.DataRow row = MyDataTable.NewRow();
            for (int i = 0; i < caract+1; i++)
            {
                row[i]=(datar[j,i].ToString());
            }
                MyDataTable.Rows.Add(row);
                Table1.Rows.Add(r);
        }

    }

    protected void Button2_Click(object sender, EventArgs e)
    {
        if(MyDataTable !=null || MyDataTable.Rows.Count == 0)
        {

            string name="productos";
            Label2.Text="it has data";
        }
        else
        {
            Label2.Text="NO data"; 
        }
    }
}

}

于 2012-07-04T20:28:59.580 に答える