Member 12183079 Ответов: 1

Как скрыть datalist значения столбца равно null


<asp:DataList ID="grdprof" runat="server">
                                 <itemtemplate>
                                  <div>
                                   <a href="%3C%25#%20Eval(%22Prospectus_mention_File1%22)%25%3E" target="_blank" title="Prospectus mention Link">
                                   <asp:Image ID="userPhoto" ImageUrl="~/images/File.png"  runat="server" />
                                   </a>
                                      <a href="%3C%25#%20Eval(%22Prospectus_mention_File2%22)%25%3E" target="_blank" title="Prospectus mention Link">
                                   <asp:Image ID="Image1" ImageUrl="~/images/File.png"  runat="server" />
                                   </a>
                                      <a href="%3C%25#%20Eval(%22Prospectus_mention_File3%22)%25%3E" target="_blank" title="Prospectus mention Link">
                                   <asp:Image ID="Image2" ImageUrl="~/images/File.png"  runat="server" />
                                   </a>
                                      <a href="%3C%25#%20Eval(%22Prospectus_mention_File4%22)%25%3E" target="_blank" title="Prospectus mention Link">
                                   <asp:Image ID="Image3" ImageUrl="~/images/File.png"  runat="server" />
                                   </a>
                                      <a href="%3C%25#%20Eval(%22Prospectus_mention_File5%22)%25%3E" target="_blank" title="Prospectus mention Link">
                                   <asp:Image ID="Image4" ImageUrl="~/images/File.png"  runat="server" />
                                   </a>
                                  </div>


За кодом страницы--

public void Bind()
    {
        DCI_BAL1 objDCI_BAL = new DCI_BAL1();
        DataSet ds = new DataSet();
        string collegeId = Session["CollegeId"].ToString();
        objDCI_BAL.Qtype = "11";
        objDCI_BAL.CollegeId = collegeId;
        objDCI_BAL.UserId = UserID;
        ds = objDCI_BAL.BindData(objDCI_BAL);
        if (ds.Tables.Count > 0)
        {
            grdprof.DataSource = ds;
            grdprof.DataBind();
}


Что я уже пробовал:

выше приведен мой код, который я хочу знать, как скрыть ImageUrl= " ~ / images/File. png"
когда я получаю набор данных имя столбца равно null

так что, пожалуйста, помогите мне

Afzaal Ahmad Zeeshan

Простой,

if(dataSet["Column"] == null) {
// Hide it; I am unsure, IsEnabled would work properly or JavaScript display would do.
}

Member 12183079

сэр, это не работает, как скрыть ImageUrl= "~ / images/File. png"

1 Ответов

Рейтинг:
8

Karthik_Mahalingam

пробовать

<asp:DataList ID="grdprof" runat="server" OnItemDataBound="grdprof_ItemDataBound">
          <ItemTemplate>
              <div>
                 <%# Eval("MyColumn") %>
                  <asp:Image ID="Image4"  ImageUrl="Images/File.png" runat="server" />
              </div>
          </ItemTemplate>
      </asp:DataList>


protected void Page_Load(object sender, EventArgs e)
       {
           if (!IsPostBack)
           {
               string strnull = null;
               DataTable dt = new DataTable();
               dt.Columns.Add("MyColumn");
               dt.Rows.Add("value");
               dt.Rows.Add(strnull);
               dt.Rows.Add("value 2");
               grdprof.DataSource = dt;
               grdprof.DataBind();
           }

       }




       protected void grdprof_ItemDataBound(object sender, DataListItemEventArgs e)
       {
           var row = e.Item.DataItem as DataRowView;
           string value = Convert.ToString( row["MyColumn"]);
           if (string.IsNullOrEmpty(value))
               (e.Item.FindControl("Image4") as Image).Visible = false;

       }


Member 12183079

сэр, я использую ваш код grdprof_ItemDataBound и хочу знать, как проверить наличие нескольких столбцов, поэтому, пожалуйста, помогите мне

Karthik_Mahalingam

просто измените этот код, добавив несколько условий
строковое значение = преобразовать.Метод toString( строка["столбец mycolumn компонент компонент"]);
if (string.IsNullOrEmpty(значение))

Member 12183079

на самом деле я хочу знать, возможно ли выполнить цикл foreach

Karthik_Mahalingam

почему foreach, это не очень хорошая идея.

Member 12183079

хорошо сэр спасибо

Karthik_Mahalingam

добро пожаловать