我创建了一个包含gridview的网页Default6.aspx。 此gridview包含w列"单选按钮" (只能选择一个单选按钮) 我有一个按钮,当我点击时,将显示所选行的ID。 单击按钮后,选中的单选按钮变为未选中,并且gridview加载新数据。 我无法理解为什么。 注意:我在另一个Default5.aspx中使用相同的代码,它可以工作。
这是gridview的代码:
<div style ="height:250px; width:1092px; overflow:auto;" spellcheck="True">
<asp:GridView ID="GridView2" runat="server"
BackColor="White" BorderColor="#DEDFDE" BorderStyle="None" BorderWidth="1px" CellPadding="4" CellSpacing="4" GridLines="Vertical" Height="160px"
OnSelectedIndexChanged="GridView2_SelectedIndexChanged" Width="271px" ForeColor="Black"
ShowHeaderWhenEmpty="True" AutoPostBack="false">
<AlternatingRowStyle BackColor="White" />
<Columns >
<asp:TemplateField HeaderText="Delete">
<ItemTemplate>
<asp:CheckBox ID="chkDelete" runat="server" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Main" >
<ItemTemplate>
<asp:RadioButton ID ="radioButton1" HeaderText="Main" runat="server"
onclick = "RadioCheck(this);" AutoPostBack ="False" Checked="False" CausesValidation="True" />
<asp:HiddenField ID="HiddenField1" runat="server" Value = '<%#Eval("id")%>' />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="ID" Visible="false">
<ItemTemplate>
<asp:Label ID="lblID" runat="server" Text='<%# Eval("id") %>' ></asp:Label>
</ItemTemplate>
</asp:TemplateField>
</Columns>
<FooterStyle BackColor="#CCCC99" />
<HeaderStyle BackColor="#80FF00" Font-Bold="True" ForeColor="Black" />
<PagerStyle BackColor="#F7F7DE" ForeColor="Black" HorizontalAlign="Right" />
<RowStyle BackColor="#CCCCCC" BorderStyle="Solid" />
<SelectedRowStyle BackColor="#CE5D5A" Font-Bold="True" ForeColor="White" />
<SortedAscendingCellStyle BackColor="#FBFBF2" />
<SortedAscendingHeaderStyle BackColor="#848384" />
<SortedDescendingCellStyle BackColor="#EAEAD3" />
<SortedDescendingHeaderStyle BackColor="#575357" />
</asp:GridView>
</div>
这是按钮的代码:
<asp:Button ID="Button1" runat="server" BackColor="#80FF00" Font-Size="Large" OnClick="Button1_Click" Text="Delete unselected rows" Width="200px" />
对于测试我创建了另一个按钮,只显示一条消息&#34;你好&#34;当我点击它时...当我这样做时(即使我不检查单选按钮),gridview也会刷新......
那可能是什么? 谢谢答案 0 :(得分:0)
考虑将您的按钮和标签包装在static void Main(string[] args)
{
A a = new C();
a.print(); // it prints C (most derived implementation called)
B b = new C();
b.printfromB(); // it prints "printfromB in C called"
}
控件中,该控件使用AJAX刷新其内容。页面的其余部分不会重新加载,操作也不会影响浏览器导航。
答案 1 :(得分:0)
答案是:
if(!IsPostBack) {//我的代码} 其他 {//无所事事}