2017-04-14 84 views
-5

我有texblocks wn01,wn02,wn03 .... wn15。每个字段都有text =“0” 如果字段wn01.text 0或“”我想输入przerzucanie的值。 如果字段wn01.text其他值比检查下一个textblock.text 但如果语句不输入, i = 1,s = 01,string.operator ==返回false。 我试过( “WN” + S)。文本,但不承认if语句带字符串和数字字段

private void przerzucanie_wyniku() 
{ 
    for (int i = 1; i < 16; i++) 
    { 
     string s = i.ToString("00"); 
     if ("wn"+s==null||"wn"+s=="0") 
     { 
      "wn"+s.Text = przerzucanie; 

      break; 
     } 
    } 
} 
+0

你能用英文名称方法名称,将可能给我们一个线索关于你想达到什么目的,像FlipTheResult()? –

+0

在另一个方法中我创建了double a,b。 dwade_w1 = a * b,przerzucanie = Math.Round(dwade_w1,4).ToString();他们叫我przerzucanie_wyniku();例如przerzucanie = 3.05,那么我想把3.05放在wn01中,如果它是空的或者有0的话。当<> 0时,空我想查找下一个空的控件文本块。 wn01 ... wn15我是我的przerzucanie价值观的历史名单。我不知道如何编写程序代码知道“wn”+ s是文本块的名称 – pawelstack

+0

是wn01,wn02字符串变量吗?它看起来像你需要一个字符串数组:string [] wn = new wn [16];然后,您可以将值分配给:wn [i] =“przerzucanie”其中i是来自for循环的那个 –

回答

2

"wn" +别的东西可以永远不会成为null或不wn启动。

你在做什么我认为是试图找到具有特定名称的文本框,而不是连接字符串。如果那是你需要的,你必须走视觉树找到它。 Here an example how to do that in WPF.

+0

我有texblocks,它们przerzucanie历史记忆,wn01具有第一计数的值,WN02第二值przerzucanie,wn03 ....如果wn01 <> 0或<>“”则检查wn02,如果wn02 = 0,则wn02 = przerzucanie,如果不是0或清空检查wn03和下一个,下一个 – pawelstack

0

这不会是真的:

 if ("wn"+s==null||"wn"+s=="0") 

这将始终显示 “WN *”。

+0

我想要(wn + s).text但我不知道如何编写代码。获取循环wn01.text,wn02.text – pawelstack

0

你可以试试:

string w = "wn" + s; 

if(w==null||w=="0"){} 
+0

string.operator ==返回\t false \t bool – pawelstack

+0

工作原理:if(w == null || w ==“0”|| wn01.Text ==“0”)。但是,当我写wn01.Text时,它会起作用。你的字符串w没有点文本选项 – pawelstack

0

answear是:

for (int i = 0; i < 15; i++) 
      { 
       TextBlock tb = (TextBlock)s7.Children[i]; 
       if (tb.Text == "0") 
       { 
        tb.Text = przerzucanie.ToString(); 
        break; 
       }