PDA

View Full Version : راهنمایی در مورد خواندن اطلاعات در repeater



yekta64
دوشنبه 23 شهریور 1388, 16:22 عصر
سلام دوستان
من یه repeater دارم که اطلاعات رو از دیتابیس می خونه تو این repeater من کنترل checkbox قرار دادم حالا چطور بفهمم که کاربر کدوم چک باکس رو تیک زده که من اون رو توی یه table دیگه ذخیره کنم
لطفا راهنمایی کنید ممنون

yekta64
چهارشنبه 25 شهریور 1388, 15:15 عصر
سلام دوستان من خودم به جواب این سوال رسیدم کدش رو در اختیار شما دوستان هم قرار می دم شاید کمکتون کنه



<script runat="server">
Dim objConn As OleDbConnection
Dim objCmd As OleDbCommand
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim strConnString As String
strConnString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("db1.mdb") & ";"
objConn = New OleDbConnection(strConnString)
objConn.Open()
If IsPostBack = False Then
BindData()
End If
End Sub
'------------------------------------------------------------------------------
Sub BindData()
Dim strSQL As String
strSQL = "SELECT * FROM customer"
Dim dtReader As OleDbDataReader
objCmd = New OleDbCommand(strSQL, objConn)
dtReader = objCmd.ExecuteReader()
'*** BindData to Repeater ***'
myRepeater.DataSource = dtReader
myRepeater.DataBind()
dtReader.Close()
dtReader = Nothing
End Sub
'----------------------------------------------------------------------------------
Sub Page_UnLoad()
objConn.Close()
objConn = Nothing
End Sub
'-----------------------------------------------------------------------------------
Protected Sub myRepeater_ItemDataBound(ByVal sender As Object, ByVal e As RepeaterItemEventArgs) Handles myRepeater.ItemDataBound
'*** CustomerID ***'
Dim lblCustomerID As Label = CType(e.Item.FindControl("lblCustomerID"), Label)
If Not IsNothing(lblCustomerID) Then
lblCustomerID.Text = e.Item.DataItem("CustomerID")
End If
'*** Name ***'
Dim lblName As Label = CType(e.Item.FindControl("lblName"), Label)
If Not IsNothing(lblName) Then
lblName.Text = e.Item.DataItem("Name")
End If
'*** Email ***'
Dim lblEmail As Label = CType(e.Item.FindControl("lblEmail"), Label)
If Not IsNothing(lblEmail) Then
lblEmail.Text = e.Item.DataItem("Email")
End If
'*** CountryCode ***'
Dim lblCountryCode As Label = CType(e.Item.FindControl("lblCountryCode"), Label)
If Not IsNothing(lblCountryCode) Then
lblCountryCode.Text = e.Item.DataItem("CountryCode")
End If
'*** Budget ***'
Dim lblBudget As Label = CType(e.Item.FindControl("lblBudget"), Label)
If Not IsNothing(lblBudget) Then
lblBudget.Text = e.Item.DataItem("Budget")
End If
'*** Used ***'
Dim lblUsed As Label = CType(e.Item.FindControl("lblUsed"), Label)
If Not IsNothing(lblUsed) Then
lblUsed.Text = e.Item.DataItem("Used")
End If
End Sub

Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs)
Dim chkCusID As CheckBox
Dim lblID As Label
Dim i As Integer

lblText.Text = ""
For i = 0 To myRepeater.Items.Count - 1
'lblText.Text = i
chkCusID = myRepeater.Items(i).FindControl("chkCustomerID")
lblID = myRepeater.Items(i).FindControl("lblCustomerID")
If chkCusID.Checked = True Then
'*** Have lblID.Text ***'
Me.lblText.Text = Me.lblText.Text & "<br>" & lblID.Text
End If
Next
End Sub

</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title>ThaiCreate.Com ASP.NET - Repeater</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<form id="form1" runat="server">
<table border="1" dir="rtl">
<asp:Repeater id="myRepeater" runat="server">
<HeaderTemplate>
<tr>
<th>
Select</th>
<th>
CustomerID</th>
<th>
Name</th>
<th>
Email</th>
<th>
CountryCode</th>
<th>
Budget</th>
<th>
Used</th>
</tr>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td align="center">
<asp:CheckBox id="chkCustomerID" runat="server"></asp:CheckBox></td>
<td align="center">
<asp:Label id="lblCustomerID" runat="server"></asp:Label></td>
<td>
<asp:Label id="lblName" runat="server"></asp:Label></td>
<td>
<asp:Label id="lblEmail" runat="server"></asp:Label></td>
<td align="center">
<asp:Label id="lblCountryCode" runat="server"></asp:Label></td>
<td align="right">
<asp:Label id="lblBudget" runat="server"></asp:Label></td>
<td align="right">
<asp:Label id="lblUsed" runat="server"></asp:Label></td>
</tr>
</ItemTemplate>
</asp:Repeater>
</table>
<br />
<asp:Button id="Button1" onclick="Button1_Click" runat="server" Text="Submit"></asp:Button>
<hr />
<asp:Label id="lblText" runat="server"></asp:Label>
</form>
</body>
</html>

zahra jalili
یک شنبه 11 اردیبهشت 1390, 11:18 صبح
سلام
میشه خواهش کنم ، این کد رو به زبان #C توضیح بدین.

hossein_moghimi
یک شنبه 11 اردیبهشت 1390, 11:51 صبح
code c# :
baraye mesal age bekhaym check shodan e RadioButton ha ro bedunim

for (int i = 0; i < RepeaterQ.Items.Count; i++)
{
Ans = "";
if (((RadioButton)(RepeaterQ.Controls[i].FindControl("RadioButton1"))).Checked)
Ans = "1";

else if (((RadioButton)(RepeaterQ.Controls[i].FindControl("RadioButton2"))).Checked)
Ans = "2";

else if (((RadioButton)(RepeaterQ.Controls[i].FindControl("RadioButton3"))).Checked)
Ans = "3";

else if (((RadioButton)(RepeaterQ.Controls[i].FindControl("RadioButton4"))).Checked)
Ans = "4";
else
Ans = "0";
}

zahra jalili
یک شنبه 11 اردیبهشت 1390, 12:54 عصر
ممنون از جوابتون
ولی من تو repeater ام Checkbox گذاشتم ، می خوام بدونم از کجا تشخیص بدم که کاربر تیک کدوم گزینه رو زده؟