私は私が表示するためasp.net
custom control
に使用しているに取り組んでいます。
クリックするとリピーターを起動する必要があります。
私が直面した問題は、発砲の能力ではなく、、およびプロパティがないことです。
達成するために、私はその中にプロパティ
を作成し、ドライブし、追加しました。また、このプログラムのクリックイベントを呼び出してリピーターを起動できるように、を追加しました。
今私が直面している問題は、イベントを発生させたが、それでもイベントが発生していないことです。
この間引きされたものをどのようにガットするかについて何か考えはありますか?repeater control
radio buttons
ItemCommand event
RadioButton
RadioButton
ItemCommend event
CommendArgument
CommandName
asp.net server control
RadioButton
CommendArgument
CommandName
Button
button
ItemCommand event
Button's click
ItemCommand
質問する
4218 次
1 に答える
2
ラジオボタンを押すと、リピーターItemCommand
イベントを呼び出すことができます。OnCheckedChanged
主な問題は、によって期待される引数を作成する方法がわからないことだと思います。ItemCommand
これが役立つと私が信じる例です。
ASPX:
<asp:Repeater ID="rptColors" runat="server" onitemcommand="rptColors_ItemCommand">
<ItemTemplate>
<asp:RadioButton ID="rdbColour" Text='<%# Eval("Color") %>' AutoPostBack="true" runat="server" OnCheckedChanged="Checked" /> <br />
</ItemTemplate>
</asp:Repeater>
背後にあるコード:
public class Colours
{
public string Color { get; set; }
}
public partial class Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
rptColors.DataSource = new List<Colours> { new Colours { Color = "Red" }, new Colours { Color = "Black" } };
rptColors.DataBind();
}
}
protected void Checked(object sender, EventArgs e)
{
foreach (RepeaterItem item in rptColors.Items)
{
RadioButton rdbColour = item.FindControl("rdbColour") as RadioButton;
if (rdbColour.Text.Equals((sender as RadioButton).Text))
{
CommandEventArgs commandArgs = new CommandEventArgs("SomeCommand", rdbColour.Text);
RepeaterCommandEventArgs repeaterArgs = new RepeaterCommandEventArgs(item, rdbColour, commandArgs);
rptColors_ItemCommand(rdbColour, repeaterArgs);
}
}
}
protected void rptColors_ItemCommand(object source, RepeaterCommandEventArgs e)
{
//Runs when you select the radio button in the repeater
System.Diagnostics.Debugger.Break();
}
}
于 2013-02-20T08:45:31.090 に答える