PDA

View Full Version : سوال: مشكل در نمايش همه رول ها در ListBox



ramtin-w
چهارشنبه 28 اردیبهشت 1390, 11:16 صبح
سلام من در
CreateUserWizard


يه استپ جديد ساختم و اين كد رو ادامه ايدي اون نوشتم منظورن اناكتيو و دياكتيوه
<asp:WizardStep runat="server" Title="choose" OnActivate="ActivateStep" OnDeactivate="DeactiveStep">



و با ايجاد يك ليست باكس و اين دوخط كد تونستم كاري كنم كه كاربر هنگام عضويت بتونه رولش رو خودش انتخاب كنه

<script runat="server">
Public Sub ActivateStep(ByVal sender As Object, ByVal e As System.EventArgs)
ListBox1.DataSource = Roles.GetAllRoles()
ListBox1.DataBind()
End Sub

Public Sub DeactiveStep(ByVal sender As Object, ByVal e As System.EventArgs)
Roles.AddUserToRole(User.Identity.Name, ListBox1.SelectedValue)
End Sub




</script>


حالا من 4 تا رول اضافي دارم كه نميخوام كاربر بتونه اونو از ليست باكس انتخاب كنه يعني توي ليست باكس نمايش داده نشن حالا چي كار كنيم ؟

ramtin-w
چهارشنبه 28 اردیبهشت 1390, 14:15 عصر
نمی دونه کسی ؟

b.paseban
چهارشنبه 28 اردیبهشت 1390, 15:12 عصر
سلام.
شما میتونید از طریق
ListBox.Items.RemoveAt(Item); با استفاده از index مربوط به اون listbox ،اون Item مشخص رو پاک کنید.

ramtin-w
چهارشنبه 28 اردیبهشت 1390, 17:52 عصر
نشد ديباگ گير ميده نميزاره
من توي Roles.GetAllRoles() يك رول رو وقتي توي پرانتز اسمشو ميزنم فقط اون رول رو باز مي كنه ولي براي نمايش دو رول نمي دونم بايد چي كار كنم
كس ديگه اي نظري نداره اساتيد كجايين ؟

ramtin-w
پنج شنبه 29 اردیبهشت 1390, 02:21 صبح
بابا يه جوابي بدين

ramtin-w
پنج شنبه 02 تیر 1390, 03:16 صبح
كسي نييييييي؟

ramtin-w
پنج شنبه 16 تیر 1390, 14:40 عصر
برادرا کمک

Himalaya
پنج شنبه 16 تیر 1390, 15:45 عصر
سلام.
خروجی تابع GetAllRoles یه آرایه از نوع string هستش. کافیه اون رو با linq فیلتر کنید.
مثلا یه همچین چیزی


string[] accessDenied = new string[] { "Admin", "MasterAdmin" };
var query = from role in Roles.GetAllRoles()
where !accessDenied.Contains(role)
select role;
ListBox1.DataSource = query;
ListBox1.DataBind();
البته بهتره قبل از اجرای کوئری، خروجی Roles.GetAllRoles رو بریزید تو یه متغیر و از اون متغیر تو بخش linq استفاده کنید