2017-11-06 4 views
0

私はasp.netとc#の初心者です。私は、コードなしでハードコーディングすることによって、データベースなしでイメージと名前をgridviewにバインドしたいと思います。 私は以下のようにしましたが、これらの値はGridview1にバインドされていません。それは間違ってどこに誰に教えてくれますか?asp.netグリッドビューデータバインディングなしデータベース

DataTable dt = new DataTable(); 

次にあなたがdt.Rowsdt.Columnsメソッドを介してデータの列と行を追加し、設定することができます:あなたは新しいDataTableを作ることができた背景には

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false" > 
<Columns> 
      <asp:BoundField DataField="Profile_Name" HeaderText="Profile_Name" /> 
      <asp:BoundField DataField="ImageUrl" HeaderText="ImageUrl" /> 
</Columns> 

protected GridView GridView1; 
protected void Page_Load(object sender, EventArgs e) 
{ 
    if (!this.IsPostBack) 
    { 
     this.loadTable(); 
    } 
} 
private void loadTable() 
{ 
    DataSet ds = new DataSet(); 
    DataTable dt; 
    DataRow dr; 
    DataColumn pName; 
    DataColumn pImage; 

    dt = new DataTable(); 
    pName = new DataColumn("Profile_Name", Type.GetType("System.String")); 
    pImage= new DataColumn("ImageURL", Type.GetType("System.String")); 

    dt.Columns.Add(pName); 
    dt.Columns.Add(pImage); 

    dr = dt.NewRow(); 
    dr["Profile_Name"] = "John Cena"; 
    dr["ImageUrl"] = "C:\\Users\\Desktop\\src\\Project\\Project.Web.WebForms\\Content\\Images\\Friends-PNG-Photos.png"; 

    dt.Rows.Add(dr); 
    dr = dt.NewRow(); 
    dr["Profile_Name"] = "Hannah Ray"; 
    dr["ImageUrl"] = "C:\\Users\\Desktop\\src\\Project\\Project.Web.WebForms\\Content\\Images\\Image.png"; 

    dt.Rows.Add(dr); 
    ds.Tables.Add(dt); 

    GridView1.DataSource = ds.Tables[0]; 
    GridView1.DataBind(); 
} 
+2

データベースからバインドしたくない場合は、モデルクラスを作成して 'List'や他のコレクション(例えば' List ')を使うことができます。はじめに、https://stackoverflow.com/questions/5517676/how-do-i-bind-a-gridview-to-a-custom-objectの例を示します。 –

+0

これまでに何を試しましたか?助けを求めるコードを投稿してください –

+0

私は先に従ったもので私の質問を編集しました。私はこれで何がうまくいかないのか分かりません。 – buddingengineer

答えて

4

DataGridView.ItemsSource = dt.defaultview; 

この情報が役立ちますように。

+0

ありがとうございました!私は先に従ったもので私の質問を編集しました。私はこれで何がうまくいかないのか分かりません。あなたは指摘できますか? – buddingengineer

0

すべてのオブジェクトをDataGridにバインドできます。

datagrid.DataSource = object; datagrid.DataBind();

+0

あなたのコードを含めるには[code block](http://stackoverflow.com/editing-help)を使用してください –

+0

Thanks @buraq enigma。私は先に従ったもので私の質問を編集しました。私はこれで何がうまくいかないのか分かりません。あなたは指摘できますか? – buddingengineer

関連する問題