Link to home
Start Free TrialLog in
Avatar of Adnan
AdnanFlag for Norway

asked on

How can i Validate my checkbox in a Grid

i need help to validate my checkbox in a grid.....!  if somone check the chekcbox i want my save button to be visible true...else false...

How can i make a function or a method where i can check if checked the btnSave shoud be enabled true...
private void CheckChecked(object sender, EventArgs e)
        {
            if (chkEngMode.Checked == true)
            {
                btnSave.Enabled = true;
            }
        }

Open in new window

ASKER CERTIFIED SOLUTION
Avatar of jandromeda
jandromeda
Flag of Sri Lanka image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of Adnan

ASKER

Here is the all CS.file
checkhbox is in the grid....!! checkbox for selecting a import file to import into system....! so if somone checke a file to import i want save button to be enable true...

checkbox is columtype: datagridviewcheckboxcolumn.....

i hope this code will help you to understand my issue...?!

using System;
using System.Collections;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Text;
using System.Windows.Forms;
using Adra.Admin;
using Adra.AMEngine;
using Adra.AMEngine.Import;
using Adra.Setting;
using Adra.Language;

namespace Adra.AMDesk
{
    public partial class PreDefinedImport : UserControl
    {
        SettingImportPredefinedList mySettingImportPredefinedList;
        Operator myOperator;
        ArrayList myAvaliableImports;
        private string myLanguage;
        private System.Reflection.Assembly assembly = typeof(PreDefinedImport).Assembly;
        public PreDefinedImport(Operator oper)
        {
            InitializeComponent();
            myOperator = oper;
            myLanguage = oper.LanguageName;

            if (myOperator.CurrentMode == OperatorMode.Engagement)
            {
                chkEngMode.Checked = true;
            }
            else
            {
                chkEngMode.Checked = false;
            }

            chkEngMode.Visible = AmEngine.Instance.IsAdmin(oper);

            oper.CurrentClientChanged += new Operator.OperatorHandler(PreDefinedImport_ClientChanged);
            oper.CurrentModeChanged += new Operator.OperatorHandler(PreDefinedImport_CurrentModeChanged);

            //oper.CurrentMode = OperatorMode.Client;
            UpdateLanguage();
            ResetSet();
        }

        public string HeadingText()
        {
            return GetValue("predefinedimports");
        }

        void PreDefinedImport_CurrentModeChanged(Operator oper)
        {
            ResetSet();
        }

        private void UpdateLanguage()
        {
            chkEngMode.Text = GetValue("engagementmode");
            btnCancel.Text = GetValue("cancel");
            btnSave.Text = GetValue("save");
            Selected.HeaderText = GetValue("select");
            FName.HeaderText = GetValue("importname");
            HelpLink.HeaderText = GetValue("help");
        }

        public string GetValue(string id)
        {
            return LanguageResource.GetText(id, myLanguage, "Adra.AMDesk.Strings", assembly);
        }

        private void PreDefinedImport_ClientChanged(Operator oper)
        {
            ResetSet();
        }

        void ResetSet()
        {
            mySettingImportPredefinedList = new SettingImportPredefinedList(myOperator);
            RefreshGridView();
        }

        public void RefreshGridView()
        {
            ArrayList availableImports;
            availableImports = AmEngine.Instance.GetAvailableImports();

            DataTable dt = new DataTable("PredefinedImports");
            DataColumn dc;
            DataRow dr;

            dc = new DataColumn();
            dc.DataType = System.Type.GetType("System.String");
            dc.ColumnName = "fname";
            dc.ReadOnly = true;
            dc.Unique = false;
            dt.Columns.Add(dc);

            dc = new DataColumn();
            dc.DataType = System.Type.GetType("System.String");
            dc.ColumnName = "SettingGuid";
            dc.ReadOnly = false;
            dc.Unique = false;
            dt.Columns.Add(dc);

            dc = new DataColumn();
            dc.DataType = System.Type.GetType("System.String");
            dc.ColumnName = "odfile";
            dc.ReadOnly = false;
            dc.Unique = false;
            dt.Columns.Add(dc);

            dc = new DataColumn();
            dc.DataType = System.Type.GetType("System.Boolean");
            dc.ColumnName = "selected";
            dc.ReadOnly = false;
            dc.Unique = false;
            dt.Columns.Add(dc);

            dc = new DataColumn();
            dc.DataType = System.Type.GetType("System.Int16");
            dc.ColumnName = "dsIndex";
            dc.ReadOnly = false;
            dc.Unique = false;
            dt.Columns.Add(dc);
            //DataColumn[] PrimaryKeyColumns = new DataColumn[1];
            //PrimaryKeyColumns[0] = dt.Columns["fname"];
            //dt.PrimaryKey = PrimaryKeyColumns;

            foreach (AmEngine.AvailableImport tmp in availableImports)
            {
                dr = dt.NewRow();
                dr["selected"] = false;
                dr["fname"] = tmp.Name;
                dr["odfile"] = tmp.OdFile;
                dt.Rows.Add(dr);
            }

            int index = 0;
            foreach (Adra.Setting.SettingType selectedtmp in mySettingImportPredefinedList.FriendlyNames)
            {
                foreach (DataRow drtmp in dt.Rows)
                {
                    if (drtmp[0].ToString() == selectedtmp.Value.ToString())
                    {
                        drtmp[4] = index;
                        drtmp[1] = selectedtmp.Name;
                        drtmp[2] = selectedtmp.Value;
                        drtmp[3] = true;
                    }

                }
                index += 1;
            }
            gridViewImports.AutoGenerateColumns = false;
            gridViewImports.DataSource = dt;
            gridViewImports.Sort(gridViewImports.Columns[1], ListSortDirection.Ascending);
        }



        //private void chkEngMode_CheckedChanged(object sender, EventArgs e)
        //{
        //    if (chkEngMode.Checked)
        //    {
        //        myOperator.CurrentMode = OperatorMode.Engagement;
        //        MessageBox.Show("Engagement");
        //    }
        //    else
        //    {
        //        myOperator.CurrentMode = OperatorMode.Client;
        //        MessageBox.Show("Client");
        //    }
        //}

        private void CheckChecked(object sender, EventArgs e)
        {
            if (dataGridViewCheckBoxColumn1.Selected)
            {
                btnSave.Enabled = true;
            }
        }

        private void PreDefinedImport_VisibleChanged(object sender, EventArgs e)
        {
            if (this.Visible)
            {
                if (myOperator.CurrentMode == OperatorMode.Engagement)
                {
                    chkEngMode.Checked = true;
                }
                else
                {
                    chkEngMode.Checked = false;
                }
                ResetSet();
            }
        }

        private void btnSave_Click(object sender, EventArgs e)
        {
            foreach (DataGridViewRow row in gridViewImports.Rows)
            {
                if ((bool)((DataGridViewCheckBoxCell)(row.Cells[0])).Value == false)
                {
                    if (mySettingImportPredefinedList.FriendlyNameExist(row.Cells[1].Value.ToString()))
                    {
                        mySettingImportPredefinedList.DeleteSetting(row.Cells[2].Value.ToString());
                        mySettingImportPredefinedList.Dbupdate();
                    }
                }
            }

            foreach (DataGridViewRow row in gridViewImports.Rows)
            {
                if ((bool)((DataGridViewCheckBoxCell)(row.Cells[0])).Value == true)
                {
                    if (mySettingImportPredefinedList.FriendlyNameExist(row.Cells[1].Value.ToString()) == false)
                    {
                        SettingImportPredefined settingImportPre = (SettingImportPredefined)mySettingImportPredefinedList.CreateSetting(row.Cells[1].Value.ToString());
                        settingImportPre.Adapter = ((string[])row.Cells[3].Value.ToString().Split('.'))[1];
                        settingImportPre.OdFile = row.Cells[3].Value.ToString();
                        mySettingImportPredefinedList.Dbupdate();
                    }
                }
            }
            ResetSet();
        }

        private void btnCancel_Click(object sender, EventArgs e)
        {
            ResetSet();
        }

        private void chkEngMode_CheckedChanged(object sender, EventArgs e)
        {
            if (chkEngMode.Checked)
            {
                myOperator.CurrentMode = OperatorMode.Engagement;
            }
            else
            {
                myOperator.CurrentMode = OperatorMode.Client;
            }
            ResetSet();
        }
    }
}