Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/282.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# wpfreadcheckbox.Content_C#_Wpf_Checkbox_Textblock - Fatal编程技术网

C# wpfreadcheckbox.Content

C# wpfreadcheckbox.Content,c#,wpf,checkbox,textblock,C#,Wpf,Checkbox,Textblock,我有几个复选框,其中有一个文本块作为内容。 现在我想从每个复选框中读出TextBlock.Text 如果我读出像checkBox.content.ToString()这样的内容我只得到System.Windows.Controls.TextBlock这有点道理 我还尝试创建一个新的文本块并为其提供内容,但没有成功 TextBlock _tempTBL = new TextBlock(); _tempTBL = checkBox.Content; 非常感谢您的帮助。您必须将类型转换为文本

我有几个复选框,其中有一个文本块作为内容。 现在我想从每个复选框中读出TextBlock.Text

如果我读出像checkBox.content.ToString()这样的内容我只得到
System.Windows.Controls.TextBlock
这有点道理

我还尝试创建一个新的文本块并为其提供内容,但没有成功

  TextBlock _tempTBL = new TextBlock();
  _tempTBL = checkBox.Content;

非常感谢您的帮助。

您必须将类型转换为
文本块

// no need to 'new' it up if you're assigning an existing instance...
TextBlock _tempTBL = (TextBlock) checkBox.Content;

您必须将类型强制转换为
TextBlock

// no need to 'new' it up if you're assigning an existing instance...
TextBlock _tempTBL = (TextBlock) checkBox.Content;
编辑:

在旁注中,您可以直接将所需文本设置为复选框的内容

checkBox.Content=“Hello World”

当您想要访问文本时,不需要类型转换

string text=checkBox.Content

编辑:

在旁注中,您可以直接将所需文本设置为复选框的内容

checkBox.Content=“Hello World”

当您想要访问文本时,不需要类型转换



string text=checkBox.Content

我知道您只是在使用提供的代码,但是应该注意的是,
=new TextBlock()
是不必要的,因为它只是创建了一个
TextBlock
,并在下一行中丢弃。就是这样。谢谢:-)@adv12有更好(更干净)的解决方案吗?编辑:啊,我明白你的意思了。当然最简单的方法是:TextBlock\u testbl=(TextBlock)checkBox.Content@mykds,是的。请参阅封送员的答案,它可以避免创建一个立即被丢弃的
TextBlock
。@adv12-好的观点。我甚至没有仔细看它。我用你的建议更新了答案。我知道你只是在使用提供的代码,但应该注意,
=new TextBlock()
是不必要的,因为它只创建了一个
TextBlock
,并在下一行中丢弃。就是这样。谢谢:-)@adv12有更好(更干净)的解决方案吗?编辑:啊,我明白你的意思了。当然最简单的方法是:TextBlock\u testbl=(TextBlock)checkBox.Content@mykds,是的。请参阅封送员的答案,它可以避免创建一个立即被丢弃的
TextBlock
。@adv12-好的观点。我甚至没有仔细看它。我用你的建议更新了答案。非常感谢much@mykds您也可以直接将
复选框的
内容设置为字符串值,请参见我的编辑。仍然存在隐式强制转换,不是吗<代码>内容
返回一种对象类型。@ps2goat:绝对!有一个隐式强制转换,我们不需要“显式”强制转换它。我选择使用文本块作为内容,因为加速器键。我的标签上的第一个下划线总是不见。多谢各位much@mykds您也可以直接将
复选框的
内容设置为字符串值,请参见我的编辑。仍然存在隐式强制转换,不是吗<代码>内容
返回一种对象类型。@ps2goat:绝对!有一个隐式强制转换,我们不需要“显式”强制转换它。我选择使用文本块作为内容,因为加速器键。我的标签上的第一个下划线总是不见。