如何在转发器中绑定多行文本 [英] how to bind multiple lines of text in repeater

查看:61
本文介绍了如何在转发器中绑定多行文本的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要在转发器中绑定来自后端的多行文本..

i已经使用过这个..

Text ='<%#Limit( Eval(feedback_details),40)%>'





aspx.cs文件...

I need to bind multiple lines of text from backend in repeater..
i have used this..
Text='<%#Limit(Eval("feedback_details"),40)%>'


aspx.cs file...

protected string Limit(object Desc, int length)
    {
    StringBuilder strDesc = new StringBuilder();
    strDesc.Insert(0, Desc.ToString());

    if (strDesc.Length > length)
    {
        return strDesc.ToString().Substring(0, length) + "...";
    }
    else return strDesc.ToString();
    }





它在同一行显示文字

这是一个样本.......



i想要这样实现

这是一个示例段落。

这是一个示例段落。

这是一个....




请帮助我..



it displays the text in same line like this
this is a sample.......

i want to implement like this
this is a sample paragraph.
this is a sample paragraph.
this is a....


kindly help me..

推荐答案

I have considered 'Desc' as string input




string Desc = "Hell\r\noWorld\r\nHow\r\nAre\r\n";
        protected string Limit(int length)
        {
            string strDesc = Convert.ToString(Desc);
            string[] lines = Regex.Split(strDesc, Environment.NewLine);
            string s = "";
            int TotalLength = 0;
            int cnt = 0;
            //Finding total length of all strings
            for (int i = 0; i < lines.Length; i++)
            {
                TotalLength += lines[i].Length;
            }
            if (TotalLength > length)
            {
                //Making of String with "<br/>
                s = lines[0];
                length = length - lines[0].Length;
                cnt = 1;
                while (length > 0)
                {
                    if (lines[cnt].Length < length)
                    {
                        s += "<br/>" + lines[cnt];
                        length = length - lines[cnt].Length;
                    }
                    else
                    {
                        s += "<br/>" + lines[cnt].Substring(0, length);
                        length = 0;
                    }
                    cnt++;
                }
                return s + "...";
            }
            else
            {
                return strDesc.Replace(Environment.NewLine, "<br/>");
            }

        }


这篇关于如何在转发器中绑定多行文本的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆