2014-01-31 3 views
0

Design CodeКак заменить строку id на строку массива во время выполнения?

<tr id="DEPB" runat="server"></tr> 

<tr id="DEPB" runat="server"></tr> 

<tr id="DEPB" runat="server"></tr> 

За Кодекса

string Test = ddlExim.SelectedItem.Text.Substring(3); 
     txtEximDesc.Text = ddlExim.SelectedItem.Text.Substring(3); 
     string[] Demo = ddlExim.SelectedValue.Split(','); 
     try 
     { 
      DBK.Style.Add("display", "none"); 
      DEPB.Style.Add("display", "none"); 
      EPCG.Style.Add("display", "none"); 
      NFEI.Style.Add("display", "none"); 
      for (int i = 0; i < 3; i++) 
      { 
       if (Demo[i] == "DEPB") 
       { 
        Demo[i].Style.Add("display", "table-row"); 
       } 
       else if (Demo[i] == "EPCG") 
       { 
        EPCG.Style.Add("display", "table-row"); 
       } 
       else if (Demo[i] == "DBK") 
       { 
        DBK.Style.Add("display", "table-row"); 
       } 
       else if (Demo[i] == ".") 
       { 
        NFEI.Style.Add("display", "table-row"); 
       } 
      } 
     } 
     catch (Exception ex) 
     { 
      string Message = ex.Message; 
     } 

я хочу, чтобы заменить DEPB, EPCG, БРК с Demo[i], как показано ниже, но получаю сообщение об ошибке: "String Doesnt содержит defnition для стиля".

Demo[i].Style.Add("display", "table-row"); 
+0

Вы можете объяснить, почему вы хотите заменить идентификаторы вашего tr массивом – ankur

+0

, потому что если статуты не нужны Демо [i] .Style.Add («display», «table-row»); – Shanrajesh

+0

покажите мне, что такое «Демо»? как вы это объявили? – zey

ответ

0

Марка runat="server" к элементу таблицы, внутри которой эти tablerows присутствуют ("TBL "в моем примере), а затем попробуйте следующий код.

for (int i = 0; i < Demo.Length; i++) 
    { 
     (tbl.FindControl(Demo[i]) as HtmlTableRow).Style.Add("display", "table-row"); 
    } 

Конечно, вам необходимо добавить следующее пространство имен.

using System.Web.UI.HtmlControls; 

Надеюсь, что это поможет.

-1

Попробуйте кошку Demo [я], чтобы WebControl

+0

объясните, пожалуйста, ясно – Shanrajesh

+0

, что вы пытаетесь сказать в этом ответе, совсем не ясно – ankur

+0

Прошу прощения, ответ был неправильным – bdn02

0

Demo представляет собой массив из строки, следовательно Demo[i] является строкой и строка не обладает свойством Style. Эта линия выглядеть как останец по сравнению с другими, если Материалами:

Demo[i].Style.Add("display", "table-row"); 

Я предполагаю, что это должно быть, как следовать вместо:

DEPB.Style.Add("display", "table-row"); 
Смежные вопросы