У меня есть сетка. В gridview есть многострочный текстовый блок, который сохраняет текст. После этого у меня есть столбец с именем imagebutton, который называется одобренным, и один из них не одобрен. Я хочу заставить пользователя до щелчка, одобренного или не одобренного, чтобы прочитать текст внутри многострочного окна. Как я могу добиться этого программно? Я знаю, что я должен создать событие Rowdatabound, но что мне делать с кодом? Я использую веб-приложение C# ASP.NET.Gridview нажмите на элементы управления включением строки
0
A
ответ
0
Я знаю, что вы можете отслеживать полосу прокрутки браузера с помощью javascript, но я лично никогда не сталкивался с подобной функциональностью для текстового поля. Я бы предложил попробовать несколько иной подход, почему бы вам не добавить дополнительный столбец в виде сетки, который имеет элемент управления флажком для - Я прочитал и принял соглашение. И Approve кнопка будет enabledd только тогда, когда флажок установлен, то вот пример:
ASPX: за
<div>
<asp:ScriptManager ID="sm" runat="server" />
<asp:UpdatePanel ID="updatePanel" runat="server">
<ContentTemplate>
<asp:GridView ID="grid" runat="server" AutoGenerateColumns="false" OnRowDataBound="grid_RowDataBound">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:TextBox TextMode="MultiLine" runat="server" ID="txtAgreement" Text='<%# Eval("Agreement") %>' />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<ItemTemplate>
I have read and accepted the agreement
<asp:CheckBox ID="chkAgreement" AutoPostBack="true" runat="server" OnCheckedChanged="CheckedChanged" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<ItemTemplate>
<asp:Button ID="btnAccept" runat="server" Text="Accept" OnClick="Accept" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</ContentTemplate>
</asp:UpdatePanel>
</div>
Код:
public partial class Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
var items = new List<License> { new License { Agreement = "Agreement 1" }, new License { Agreement = "Agreement 2" } };
grid.DataSource = items;
grid.DataBind();
}
}
protected void Accept(object sender, EventArgs e)
{
}
protected void grid_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
(e.Row.FindControl("btnAccept") as Button).Enabled = false;
}
protected void CheckedChanged(object sender, EventArgs e)
{
var chkAgreement = sender as CheckBox;
Button btnAccept = null;
if (chkAgreement != null)
{
var row = chkAgreement.Parent.Parent as GridViewRow;
btnAccept = row.FindControl("btnAccept") as Button;
if (btnAccept != null)
if (chkAgreement.Checked)
btnAccept.Enabled = true;
else
btnAccept.Enabled = false;
}
}
}
public class License
{
public string Agreement { get; set; }
}
Смежные вопросы
- 1. jQuery элементы отображения на gridview мыши нажмите
- 2. Автоматические элементы управления GridView
- 3. Пользовательские элементы управления Gridview
- 4. Нажмите элементы управления под другими элементами управления
- 5. Элементы управления ASP.NET GridView/DetailView
- 6. Добавить динамические элементы управления (набор элементов управления) на кнопке Нажмите
- 7. UWP: элемент управления UserControl GridView нажмите
- 8. нажмите на заголовок gridview
- 9. Как добавить различные элементы управления в Gridview?
- 10. Невозможно установить высоту строки на GridView управления
- 11. GridView пользовательские элементы управления не можете получить данные строки
- 12. GridView иметь различные элементы управления на той же колонке
- 13. Обновление привязанного данных GridView на кнопке Нажмите
- 14. динамически создаваемые элементы управления исчезают, когда нажмите
- 15. Какие элементы управления влияют на EnableViewState на GridView?
- 16. ViewState Issue - Пользовательские элементы управления в GridView
- 17. Как проверить элементы управления в вложенном gridview?
- 18. Элементы управления пользователя asp.net связывают внутри gridview
- 19. найти элементы управления из EmptyDataTemplate в GridView
- 20. Элементы управления шаблонами asp.net вложенных gridview
- 21. Невозможно сфокусироваться (нажмите) на элементы управления в контейнере ежевика каскады
- 22. Чтение каждой строки в GridView на кнопке Нажмите
- 23. Gridview нажмите на заголовок для сортировки команды запуска строки
- 24. Как открыть всплывающее окно на Devexpress Gridview CustomButton Нажмите?
- 25. Элементы управления проверки, предоставляющие исключение при использовании с GridView on Delete, нажмите
- 26. Выберите элементы из строки и нажмите массив
- 27. . Нажмите на ссылку управления LinkButton.
- 28. Элемент управления вкладкой Ajax на вкладке нажмите
- 29. jQuery нажмите на добавленные элементы
- 30. нажмите строку в GridView
его не 'rowdatabound' событие –
Добавьте jscript к кнопке, которая позволяет вводить многострочный блок. – Vladimir
Я считаю, что это rowdatabound, потому что я хочу: когда пользователь нажимает на определенную строку, две кнопки изображения в этой строке будут включены. В противном случае кнопки изображения будут отключены. – Equilibrium