c# - 如果没有问题权限

时间:2018-03-15 03:15:21

标签: c#

我在c#中有一个允许用户发布事件的程序(将其视为不同类别的不同凭证)。在程序中,有一个称为促销权限的功能来设置对事件的访问权限。这两种访问权限是查看权限和颁发权限。查看权限允许用户查看事件并发出权限允许用户发出(打印)事件。例如,如果事件设置为视图权限:是并发出权限:否,则用户无法发出事件但可以查看它。如果两种情况都是肯定的,则用户可以发出该事件。

现在我在程序中有另一个函数来发出事件(凭证)。在该程序中,它显示事件列表(当用户输入其ID时)并且能够勾选(复选框)他们希望发布的事件。我需要的是,如果事件没有问题权限但查看权限,则不应允许用户勾选复选框,如果他们尝试这样做,则应该抛出错误消息通知用户限制。

这是我的代码:

   private void lisVieBenefits_ItemChecked(object sender, ItemCheckedEventArgs e)
    {
        RestartAutoLogoffTimer();
        DataSet dsData = oBSPromoPermission.GetBrowseData();

    if (e.Item.Checked && !IsEnoughtToRedeemPointEarnReward())
        {
            // Uncheck previous item
            e.Item.Checked = false;
            return;
        }

        if (panBenefitSelection.Enabled)
        {
            int intTotal = 0;
            for (int intCounter = 0; intCounter < lisVieBenefits.Items.Count; intCounter++)
            {
                if (lisVieBenefits.Items[0].ListView.Items[intCounter].Checked)
                    intTotal += 1;
            }

            if (intTotal > intMaxBenefitSelection)
            {
                lisVieBenefits.Items[0].ListView.Items[e.Item.Index].Checked = false;
                SetErrorHint("Please select not more than (" + intMaxBenefitSelection + ") benefit selection");
            }



            if (dsData.Tables[0].Columns[3].ToString() == "True" && dsData.Tables[0].Columns[4].ToString() == "False")
            {

                //  lisVieBenefits.Items[0].ListView.Items[e.Item.Index].Checked = false;
                SetErrorHint("This event does not have an issue permission");
            }


        }

我宣布并致电班级:  private BSPromoPermission oBSPromoPermission = new BSPromoPermission();

因此,dsData是一个数据集变量,声明用于调用具有查看权限和发布权限的数据库。如代码所示,对于查看权限,列[3]设置为true,对于发布权限,列[4]设置为false。 不知怎的,这不起作用。任何帮助将不胜感激。

0 个答案:

没有答案