2017-09-29 2 views
0

バーコードと検索ボタンを入力するテキストボックスがありました。このボタンには、サーバーからのバーコードに関連する3つのチャンクデータからなるラジオボタンのリストが表示されます。ASP.NETのSQL Serverからラジオボタンでデータを表示

sheetDetail.aspx

<div> 
    <span>Enter Barcode: </span> 
    <asp:TextBox runat="server" ID="txtSearch" /> 
    <asp:Button runat="server" ID="btnSearchBar" Style="background-color: #c9302c;" CssClass="btn btn-danger" Text="Search" OnClick="btnSearchBar_Click" /> 
    <asp:RadioButtonList Font-Size="X-Small" RepeatLayout="Table" RepeatColumns = "2" ID="rediobtn" runat="server"> 
    </asp:RadioButtonList> 

</div> 

protected void btnSearchBar_Click(object sender, EventArgs e) 
{ 
    eExistingSheetQuery existingSheetQuery = new eExistingSheetQuery(); 

    string value = txtSearch.Text.Trim(); 
    // Your Ado.Net code to get data from DB 

    rediobtn.Items.Clear(); 

    DataTable dt = existingSheetQuery.GetSheetItem(value); 

    rediobtn.DataSource = existingSheetQuery.GetSheetItem(value); 


    rediobtn.DataBind(); 
} 

eExistingSheetQuery.cs

public DataTable GetSheetItem(string barcode) 
{ 
    try 
    { 
     conn = new SqlConnection(estocktake); 
     conn.Open(); 

     DataTable dtd = new DataTable(); 
     GridView gvd = new GridView(); 

     cmds = new SqlCommand(@"SELECT [invtid],[transtatuscode] ,[descr] FROM [Products] where ib_itemcode1='" + barcode + "' ;", conn); 
     adpt = new SqlDataAdapter(); 

     adpt.SelectCommand = cmds; 

     cmds.ExecuteNonQuery(); 
     adpt.Fill(dtd); 
     conn.Close(); 
     conn.Dispose(); 


     return dtd; 
    } 
    catch (Exception) 
    { 
     conn.Close(); 
     conn.Dispose(); 
     return null; 
    } 
} 

ボタンsheetDetail.aspx.csはonclickをトリガすると、関数が実行を開始します、テキストボックスから値を取得します。

getsheetitem - >が

...クエリを実行し、データ

それバインドGridViewコントロールに

を得るすべてのことの表示がSystem.Data.DataRowViewでした。すべてのラジオは..

私は各ラジオボタンを表示したかった。

[ラジオボタン] invtid - DESCR - transtatuscode

すべてのヘルプは本当にすごいとなります。

答えて

0

私はあなたが結合したい場合は、すなわち

rediobtn.DataTextField = "transtatuscode"; 
rediobtn.DataValueField = "invtid"; 
rediobtn.DataBind(); 

DataTextFieldを定義していないので、あなたがSystem.Data.DataRowViewを取得していると信じてsheetDetail.aspx.cs

protected void btnSearchBar_Click(object sender, EventArgs e) 
{ 
    eExistingSheetQuery existingSheetQuery = new eExistingSheetQuery(); 

    string value = txtSearch.Text.Trim(); 
    // Your Ado.Net code to get data from DB 

    DataTable dt = existingSheetQuery.GetSheetItem(value); 

    rediobtn.Items.Clear(); 
    rediobtn.Items.Add(Rows[0]["invtid"]); 
    rediobtn.Items.Add(Rows[0]["transtatuscode"]); 
    rediobtn.Items.Add(Rows[0]["descr"]); 
} 
+0

私は役割を持っていますが、現在のコンテキストに存在しません.. – phan

0

のためにこれを試してみてくださいそれらのフィールドをすべて一緒にして、これらの3つのフィールドを連結するためにクエリを変更することができます。

0

助けを借りてくれてありがとうございました。私が把握している解決策は、このようにすべての変更を行うことです。

このようにして、データはテーブルにバインドされる前にすでに結合されます。

関連する問題