Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/296.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在ASP.NETC的CKEditor中粘贴图像#_C#_Text_Gridview_Label_Ckeditor - Fatal编程技术网

C# 在ASP.NETC的CKEditor中粘贴图像#

C# 在ASP.NETC的CKEditor中粘贴图像#,c#,text,gridview,label,ckeditor,C#,Text,Gridview,Label,Ckeditor,我正在我的项目ASP NET C上使用插件# 在我的代码中也使用,通过使用复制/粘贴在文本框txsezi图像上插入,来修改gridview的行 图像复制/粘贴工作正常 问题是当我复制图像并粘贴到gridview上的文本编辑器txsezi,并将返回的行保存在gridview上的标签lbsezi中时 我的问题在这里。。。在这种情况下,标签lbsezi中的返回值是正确的 <asp:Label ID="lbsezi" runat="server"

我正在我的项目ASP NET C上使用插件#

在我的代码中也使用,通过使用复制/粘贴在文本框
txsezi
图像上插入,来修改gridview的行

图像复制/粘贴工作正常

问题是当我复制图像并粘贴到
gridview
上的文本编辑器
txsezi
,并将返回的行保存在
gridview
上的标签
lbsezi
中时

我的问题在这里。。。在这种情况下,标签
lbsezi
中的返回值是正确的

<asp:Label ID="lbsezi" runat="server"
    Text='<%# HttpUtility.HtmlDecode(Eval("contents").ToString()) %>'></asp:Label>
标签
lbsezi
中的返回错误

但是我需要把绳子弄断以免它太长

如何解决这个问题

下面是我的代码

.aspx

<script src="Scripts/ckeditor/ckeditor.js"></script>
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false" OnRowEditing="OnRowEditing">
    <Columns>
        <asp:BoundField DataField="Name" HeaderText="Name" ItemStyle-Width="150" />
        <asp:BoundField DataField="Country" HeaderText="Country" ItemStyle-Width="150" />
        <asp:TemplateField HeaderText="Text"
            ItemStyle-HorizontalAlign="Left">
            <ItemTemplate>
                <asp:Label ID="lbsezi" runat="server"
                    Text='<%# HttpUtility.HtmlDecode(Eval("contents").ToString()) %>'></asp:Label>
            </ItemTemplate>
            <EditItemTemplate>
                <asp:TextBox ID="txsezi" runat="server" TextMode="MultiLine"
                    Text='<%# HttpUtility.HtmlDecode(Eval("contents").ToString()) %>'
                    CssClass="ckeditor" CausesValidation="true"></asp:TextBox>
            </EditItemTemplate>
        </asp:TemplateField>
        <asp:TemplateField>
            <ItemTemplate>
                <asp:LinkButton Text="Edit" runat="server" CommandName="Edit" />
            </ItemTemplate>
            <EditItemTemplate>
                <asp:LinkButton Text="Update" runat="server" OnClick="OnUpdate" />
                <asp:LinkButton Text="Cancel" runat="server" OnClick="OnCancel" />
            </EditItemTemplate>
        </asp:TemplateField>
    </Columns>
</asp:GridView>

.cs

protected void Page_Load(object sender, EventArgs e)
{
    if (!this.IsPostBack)
    {
        BindGrid();
    }
}
 
private void BindGrid()
{
    DataTable dt = new DataTable();
    dt.Columns.AddRange(new DataColumn[]
    {
        new DataColumn("Id"),
        new DataColumn("Name"),
        new DataColumn("Country"),
        new DataColumn("contents")
    });
    dt.Rows.Add(1, "John Hammond", "United States", "<p><span style='text-align:'>Text row1</span></p><p>&nbsp;</p><p><img alt='1' src='data:image/png;base64,... />");
    GridView1.DataSource = dt;
    GridView1.DataBind();
}
 
protected void OnRowEditing(object sender, GridViewEditEventArgs e)
{
    GridView1.EditIndex = e.NewEditIndex;
    this.BindGrid();
}
 
protected void OnUpdate(object sender, EventArgs e)
{
    GridViewRow row = (sender as LinkButton).NamingContainer as GridViewRow;      
 
    GridView1.EditIndex = -1;
    this.BindGrid();
}
 
protected void OnCancel(object sender, EventArgs e)
{
    GridView1.EditIndex = -1;
    this.BindGrid();
}

public static string SpliceText(string text, int lineLength)
{
    var charCount = 0;
    var lines = text.Split(new string[] { " " }, StringSplitOptions.RemoveEmptyEntries)
                    .GroupBy(w => (charCount += w.Length + 1) / lineLength)
                    .Select(g => string.Join(" ", g));

    return String.Join("<br />", lines.ToArray());
}
受保护的无效页面加载(对象发送方,事件参数e)
{
如果(!this.IsPostBack)
{
BindGrid();
}
}
私有void BindGrid()
{
DataTable dt=新的DataTable();
dt.Columns.AddRange(新数据列[])
{
新数据列(“Id”),
新数据列(“名称”),
新数据列(“国家”),
新数据列(“内容”)
});
添加(1,“约翰·哈蒙德”、“美国”、“正文第1行”

>); GridView1.DataSource=dt; GridView1.DataBind(); } 受保护的void OnRowEditing(对象发送方,GridViewEditEventArgs e) { GridView1.EditIndex=e.NewEditIndex; 这个.BindGrid(); } 受保护的void OnUpdate(对象发送方、事件参数) { GridViewRow行=(发送者作为LinkButton)。将容器命名为GridViewRow; GridView1.EditIndex=-1; 这个.BindGrid(); } 受保护的void OnCancel(对象发送方、事件参数e) { GridView1.EditIndex=-1; 这个.BindGrid(); } 公共静态字符串文本(字符串文本,int lineLength) { var charCount=0; var lines=text.Split(新字符串[]{“},StringSplitOptions.RemoveEmptyEntries) .GroupBy(w=>(charCount+=w.Length+1)/线宽) .Select(g=>string.Join(“,g)); 返回字符串.Join(“
”,line.ToArray()); }
protected void Page_Load(object sender, EventArgs e)
{
    if (!this.IsPostBack)
    {
        BindGrid();
    }
}
 
private void BindGrid()
{
    DataTable dt = new DataTable();
    dt.Columns.AddRange(new DataColumn[]
    {
        new DataColumn("Id"),
        new DataColumn("Name"),
        new DataColumn("Country"),
        new DataColumn("contents")
    });
    dt.Rows.Add(1, "John Hammond", "United States", "<p><span style='text-align:'>Text row1</span></p><p>&nbsp;</p><p><img alt='1' src='data:image/png;base64,... />");
    GridView1.DataSource = dt;
    GridView1.DataBind();
}
 
protected void OnRowEditing(object sender, GridViewEditEventArgs e)
{
    GridView1.EditIndex = e.NewEditIndex;
    this.BindGrid();
}
 
protected void OnUpdate(object sender, EventArgs e)
{
    GridViewRow row = (sender as LinkButton).NamingContainer as GridViewRow;      
 
    GridView1.EditIndex = -1;
    this.BindGrid();
}
 
protected void OnCancel(object sender, EventArgs e)
{
    GridView1.EditIndex = -1;
    this.BindGrid();
}

public static string SpliceText(string text, int lineLength)
{
    var charCount = 0;
    var lines = text.Split(new string[] { " " }, StringSplitOptions.RemoveEmptyEntries)
                    .GroupBy(w => (charCount += w.Length + 1) / lineLength)
                    .Select(g => string.Join(" ", g));

    return String.Join("<br />", lines.ToArray());
}