This is a migrated thread and some comments may be shown as answers.

[Solved] How to Show/Hide Rad Combobox items based on user rights.

2 Answers 615 Views
ComboBox
This is a migrated thread and some comments may be shown as answers.
gc_0620
Top achievements
Rank 1
gc_0620 asked on 31 Aug 2009, 12:04 AM
Hellow there,

I have a rad combobox with 4 items. I would like to hide the redhighlighted items (Customer Id's ANATR & ANTON) from Combo box in Radgrid Edit Mode if users do not have permission to view/select them. Below is my code. Thanks a lot for your help.

gc_0620
_____________

<asp:AccessDataSource ID="AccessDataSource1" runat="server"

DataFile="~/App_Data/Nwind.mdb"

DeleteCommand="DELETE FROM [Customers] WHERE (([CustomerID] = ?) OR ([CustomerID] IS NULL AND ? IS NULL))"

InsertCommand="INSERT INTO [Customers] ([CustomerID], [CompanyName]) VALUES (?, ?)"

SelectCommand="SELECT [CustomerID], [CompanyName] FROM [Customers] where left([CustomerId],1) = 'A'"

UpdateCommand="UPDATE [Customers] SET [CompanyName] = ? WHERE (([CustomerID] = ?) OR ([CustomerID] IS NULL AND ? IS NULL))">

<DeleteParameters>

<asp:Parameter Name="CustomerID" Type="String" />

</DeleteParameters>

<UpdateParameters>

<asp:Parameter Name="CompanyName" Type="String" />

<asp:Parameter Name="CustomerID" Type="String" />

</UpdateParameters>

<InsertParameters>

<asp:Parameter Name="CustomerID" Type="String" />

<asp:Parameter Name="CompanyName" Type="String" />

</InsertParameters>

</asp:AccessDataSource>
<telerik:RadGrid ID="RadGrid1" runat="server">

 

 

<telerik:RadComboBox ID="RadComboBox2" Runat="server" DataTextField="CompanyName" DataValueField="CustomerID"

 

 

 DataSourceID="AccessDataSource1">

</telerik:RadComboBox>

 

 

</telerik:RadGrid>

 

 

 

____________________________________________

 

CustomerID:                 CompanyName

 

 

ALFKI                             Alfreds Futterkiste

ANATR                           Ana Trujillo Emparedados y helados

ANTON                          Antonio Moreno Taquería

AROUT                          Around the Horn

2 Answers, 1 is accepted

Sort by
0
Shinu
Top achievements
Rank 2
answered on 31 Aug 2009, 06:28 AM
Hi,

Try out the following code snippet in order to hide certain RadComboBoxItems from the combo which is placed in EditItemTemplate of RadGrid.

C#:
 
protected void RadGrid1_ItemDataBound(object sender, GridItemEventArgs e) 
    if (e.Item is GridEditableItem && e.Item.IsInEditMode) 
    { 
        GridEditableItem item = (GridEditableItem)e.Item; 
        // Check for condition whether user have permission 
        RadComboBox combo = (RadComboBox)item.FindControl("RadComboBox2"); 
        foreach (RadComboBoxItem ComboItem in combo.Items) 
        { 
            if (ComboItem.Value == "ANATR" || ComboItem.Value == "ANTON"
            { 
                ComboItem.Visible = false
            } 
            else 
            { 
                ComboItem.Visible = true
            } 
        } 
    } 

-Shinu.
0
gc_0620
Top achievements
Rank 1
answered on 01 Sep 2009, 02:03 AM

Thanks Shinu,

Your prompt response is appreciated. The solution works Perfectly.

Sincerely

gc_0620


Tags
ComboBox
Asked by
gc_0620
Top achievements
Rank 1
Answers by
Shinu
Top achievements
Rank 2
gc_0620
Top achievements
Rank 1
Share this question
or