C# 创建新行时自动缩进
我正在做一个学校的项目,它是一个HTML编辑器。现在,我有一个问题,如何使一个自动缩进每当我做一个新的行。压痕的间距应与其上方的线条相同。我希望我的问题足够清楚C# 创建新行时自动缩进,c#,winforms,richtextbox,indentation,C#,Winforms,Richtextbox,Indentation,我正在做一个学校的项目,它是一个HTML编辑器。现在,我有一个问题,如何使一个自动缩进每当我做一个新的行。压痕的间距应与其上方的线条相同。我希望我的问题足够清楚 private void richTextBox1_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.Return) { richTextBox1.Text = //this part, i don't know how to make
private void richTextBox1_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Return)
{
richTextBox1.Text = //this part, i don't know how to make it
}
你说你已经找了两天了。你在找什么<代码>如何实现自动缩进?嗯,这可能不会让你找到解决办法。(编辑:实际上,即使这样也会给你一些结果…) 试着把问题分成几部分。自动缩进需要哪些步骤?请注意,这并不限于用户按下Enter键的情况!一旦识别了这些步骤,就可以开始对每个步骤进行单独搜索。通过这种方式,您将学习相当多的语言和框架特性,这些特性将比完整的代码解决方案更能帮助您 首先,可能的步骤可能包括:
- 确定何时向文本中添加新行/特定字符
- 确定文本何时粘贴到文本框
- 将文本附加到现有文本
- 等等
- 查找上一行
- 计算该行以多少空格/制表符开头
- 在最后一行追加相同数量的空格/制表符
- 假设:此解决方案适用于文本框末尾添加的新行李>
祝你作业顺利,我建议你不要把重点放在代码上。专注于导致代码的思考过程,其他事情就会到位。到目前为止,您尝试了哪些?你需要用制表符还是空格缩进?嗨,哈菲兹,到目前为止你的代码是什么?事实上,当你的问题和标签结合在一起时,你的问题是完全有意义的。感觉就像1)我在做家庭作业,2)你会得到免费的工作,实际上并不关心从结果中学习任何东西。@nphx先生/女士,我不是开玩笑。@ChrisK我试过使用按钮,但仍然不工作谢谢你的建议,先生/女士。每当我尝试搜索解决方案时,我从不使用“How to…”,因为我们不允许使用“How to…”、“How can I…”等。再一次谢谢你,先生/夫人谢谢你,先生/夫人。这对我帮助很大!我从来没有想过如何寻找解决方案。