我在 Stackoverflow 上的第一个问题
ASP.NET C# 网格视图
我的问题是这个
如何在我的命令字段模板中拥有一个自定义编辑按钮,该按钮仍会将行切换到编辑模式,但会在其中一个字段中显示不同的内容。
我的命令列有一个模板字段。我将 rowdatabound 事件用于逻辑。
<asp:templatefield itemstyle-width="300px">
<itemtemplate>
<asp:Literal ID="label2" runat="server" Text='<%# System.Net.WebUtility.HtmlDecode(Eval("translation").ToString()) %>'></asp:Literal>
</itemtemplate>
<edititemtemplate>
<cc1:myeditor ID="teHtml" startupInSourceOrwysiwyg="wysiwyg" type="lite" EnableViewState="false" runat="server" Text='<%# Bind("translation")%>' />
</edititemtemplate>
</asp:templatefield>
<asp:templatefield headertext="Command">
<itemtemplate>
<asp:LinkButton CommandName="Edit" Text="Edit" ID="btnEdit" runat="server"></asp:LinkButton>
<asp:LinkButton CommandName="EditHtml" Text="EditHtml" ID="btnEditHtml" runat="server" ></asp:LinkButton>
</itemtemplate>
<edititemtemplate>
<asp:LinkButton CommandName="Update" Text="Update" ID="btnUpdate" runat="server"></asp:LinkButton>
<asp:LinkButton CommandName="Cancel" Text="Cancel" ID="btnCancel" runat="server"></asp:LinkButton>
</edititemtemplate>
</asp:templatefield>
代码背后 - 事件
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow && (e.Row.RowState & DataControlRowState.Edit) == DataControlRowState.Edit)
{
CkEditor editorInstance = (CkEditor)e.Row.FindControl("teHtml");
string theTranslationText = editorInstance.Text;
bool isHtmlModeSelected;
isHtmlModeSelected = hfHtml.Value == "true" ? true : false;
if (!(isHtmlModeSelected) || (someHtmlFoundInTranslation(theTranslationText)))
{
editorInstance.startupInSourceOrwysiwyg = "source";
editorInstance.removeplugins = "toolbar";
}
}
}
谢谢