我正在为作业构建一个简单的表单应用程序。我想用方法输出字符串变量“newSentence”的修改版本,但我不知道如何。这是我的代码片段:
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
string sentence = textBox2.Text;
string extract = textBox1.Text;
bool b;
string newSentence = sentence.Replace(extract, " ");
if (b = sentence.Contains(extract))
{
textBox3.Text = newSentence.ToUpper; // here id like to get newSentence in
textBox4.Text = newSentence.Length; //uppercase but Im stuck on how to
//convert the types
}
}
}
答案 0 :(得分:3)
1) ToUpper是一种不属性的方法。
textBox3.Text = newSentence.ToUpper;
到
textBox3.Text = newSentence.ToUpper();
2) Length
返回int,将其转换为字符串
textBox4.Text = newSentence.Length;
到
textBox4.Text = newSentence.Length.ToString();
3 )
if (sentence.Contains(extract))
答案 1 :(得分:0)
问题1:您正在使用ToUpper
作为属性
解决方案1:您需要使用String.ToUpper()
作为方法,而不是属性。
来自MSDN:String.ToUpper()
返回此字符串的副本,该字符串转换为大写。
试试这个:
textBox3.Text = newSentence.ToUpper();
问题2:您只能将字符串设置为TextBox控件的Text属性
解决方案2:将newentence.Length
转换为String
,然后再将其分配到TextBox
Text
媒体资源。
试试这个:
textBox4.Text = newSentence.Length.ToString();
建议:您不需要将返回值分配给另一个布尔变量。
所以你可以简单地检查Contains()
方法的返回值的返回值。
if (sentence.Contains(extract))
{
//code here
}
完整代码:
private void button1_Click(object sender, EventArgs e)
{
string sentence = textBox2.Text;
string extract = textBox1.Text;
string newSentence = sentence.Replace(extract, " ");
if ( sentence.Contains(extract))
{
textBox3.Text = newSentence.ToUpper();
textBox4.Text = newSentence.Length.ToString();
}
}