我的表单中有一个TextBox,并尝试将内容包装成多行,以免被切断。
到目前为止,我做到了这一点,
var builder = new ConfigurationBuilder()
.AddJsonFile("appsettings.json")
.AddJsonFile($"appsettings.{env.EnvironmentName}.json", optional: true);
if (env.IsEnvironment("Development"))
{
// This reads the configuration keys from the secret store.
// For more details on using the user secret store see http://go.microsoft.com/fwlink/?LinkID=532709
builder.AddUserSecrets();
}
// this file name is ignored by gitignore in my project
// so you can create it and use on your local dev machine
// remember last config source added wins if it has the same settings
builder.AddJsonFile("appsettings.local.overrides.json", optional: true);
// most common use of environment variables would be in azure hosting
// since it is added last anything in env vars would trump the same setting in previous config sources
// so no risk of messing up settings if deploying a new version to azure
builder.AddEnvironmentVariables();
Configuration = builder.Build();
我尝试了上面的各种组合,将Multiline设为false,然后将WordWrap设为false。
但似乎没有任何效果。
我发现有一个TextWrapping属性,但由于某些原因,我的TextBox不可用,可能 因为.Net版本不同。
有没有办法将TextBox的内容包装成多行?
答案 0 :(得分:4)
你的内容是什么?它是一个人类可读的"字符串(例如'普通'单词和句子),还是十六进制字符串等?
根据您的内容,您有多种选择:
\n
AcceptReturn="true" TextWrapping="Wrap"
\n
和.Multiline := true
.WordWrap := true
个字符
醇>
ADDENDUM:如果您想在每\n
个字符后插入x
,我会为您提供以下代码段(我非常喜欢):
using System.Text.RegularExpressions;
...
string mystr = "this is my very long text";
mystr = Regex.Replace(mystr, "(.{20})", "$1\n");
TextBox1.Text = mystr; // or: TextBox1.Content = mystr;
正则表达式中的20
"(。{20})"您的角色数量将被插入\n
之后。 (意思是,你的字符串每20个字符后会有一个新行)
答案 1 :(得分:0)
<asp:TextBox ID="textBox1" runat="server" class="form-control input-sm m-bot15" ForeColor="#800000" BackColor="#ffe1d2" Wrap="true" TextMode="MultiLine" Width="48px" ></asp:TextBox>
e.Row.Cells[i].Attributes.Add("style", "word-break:break-all;word-wrap:break-word;");
答案 2 :(得分:-3)
这很烦人,因为您希望自动换行实际包装文本。 我正在使用这种解决方法:使用“右页边距”属性设置句子的长度。然后它将自动换行。