コード例 #1
0
 private void SetDDLLevelSelection(DropDownList ddl, string extHierarchyID)
 {
     if (amsResultHierarchyLevels != null && amsResultHierarchyLevels.Result.Count > 0)
     {
         HierarchyLevels hL    = amsResultHierarchyLevels.Result.SingleOrDefault(p => p.ExtHierarchyID == extHierarchyID);
         int             index = hL.ListLevelInHiearchy.IndexOf(hL.SelectedLevel);
         if (hL != null && hL.SelectedLevel > 0 && index != -1 && hL.ListLevelNames.Capacity >= index)
         {
             string savedLevelName    = hL.ListLevelNames[index];
             int    indexOfSavedLevel = ddl.Items.IndexOf(new ListItem(savedLevelName));
             if (indexOfSavedLevel != -1 && ddl.Items.Count >= indexOfSavedLevel)
             {
                 ddl.SelectedIndex = indexOfSavedLevel;
             }
         }
     }
 }
コード例 #2
0
    private DataTable PrepareHierarchyLevelSelectionDT(bool noGroupingFlag)
    {
        DataTable    dt                       = new DataTable();
        string       extHierarchyID           = string.Empty;
        int          levelInHierarchy         = 0;
        string       currentSelectedLevelName = string.Empty;
        int          selectedIndexFromLevels  = 0;
        DropDownList ddl                      = null;

        dt.Columns.Add("ExtHierarchyID");
        dt.Columns.Add("LevelInHierarchy", typeof(Int16));

        foreach (RepeaterItem ri in repGrouping.Items)
        {
            ddl            = ri.FindControl("ddlLevels") as DropDownList;
            extHierarchyID = (ri.FindControl("lblHierarchyID") as Label).Text;
            if (noGroupingFlag)
            {
                dt.Rows.Add(extHierarchyID, null);
                ddl.SelectedIndex = 0;
            }
            else
            {
                currentSelectedLevelName = ddl.SelectedValue;
                //HierarchyLevels hl1 = ri.DataItem as HierarchyLevels;
                HierarchyLevels hl = m_ProductService.GetProductHierarchyLevel(extHierarchyID).Result;
                if (hl != null)
                {
                    selectedIndexFromLevels = hl.ListLevelNames.IndexOf(currentSelectedLevelName);
                    if (selectedIndexFromLevels >= 0)
                    {
                        levelInHierarchy = hl.ListLevelInHiearchy[selectedIndexFromLevels];
                        //The level selected in UI should not be what is already saved to prevent redundant calls
                        if (levelInHierarchy != hl.SelectedLevel)
                        {
                            dt.Rows.Add(extHierarchyID, levelInHierarchy);
                        }
                    }
                }
            }
        }
        return(dt);
    }