示例#1
0
        private void listMonitorTimings_SelectedIndexChanged(object sender, EventArgs e)
        {
            var currDataSource = (ICollection <EncodedMonitorTimings>)(listMonitorTimings.DataSource);

            if (currDataSource != null)
            {
                int currIndex = listMonitorTimings.SelectedIndex;
                if (currIndex >= 0 && currIndex < currDataSource.Count)
                {
                    EncodedMonitorTimings currTiming = currDataSource.ElementAt(currIndex);
                    if (currTiming.ToString().StartsWith("ERROR"))
                    {
                        btnEditTiming.Enabled = false;
                        btnCopyTiming.Enabled = false;
                    }
                    else
                    {
                        btnEditTiming.Enabled = true;
                        btnCopyTiming.Enabled = true;
                    }
                    btnDeleteTiming.Enabled = true;
                    return;
                }
            }
            btnEditTiming.Enabled   = false;
            btnCopyTiming.Enabled   = false;
            btnDeleteTiming.Enabled = false;
        }
示例#2
0
        public void TimingChangedCallback(string oldTiming, string newTiming)
        {
            if (oldTiming != null && newTiming.Equals(oldTiming, StringComparison.OrdinalIgnoreCase))
            {
                return;
            }

            var listDs = (EncodedMonitorTimings[])listMonitorTimings.DataSource;

            EncodedMonitorTimings[] newDs = null;
            if (oldTiming != null)
            {
                newDs = new EncodedMonitorTimings[listDs.Length];
                Array.Copy(listDs, newDs, listDs.Length);
                int changedIndex = Array.FindIndex(newDs, x => x.encodedName.Equals(oldTiming, StringComparison.OrdinalIgnoreCase));
                if (changedIndex >= 0 && changedIndex < newDs.Length)
                {
                    newDs[changedIndex].encodedName = newTiming;
                }
            }
            else
            {
                newDs = new EncodedMonitorTimings[(listDs == null) ? 1 : (listDs.Length + 1)];
                if (listDs != null)
                {
                    Array.Copy(listDs, newDs, listDs.Length);
                }

                newDs[newDs.Length - 1] = new EncodedMonitorTimings(newTiming);
            }

            var oldSelection = listMonitorTimings.SelectedIndex;

            listMonitorTimings.DataSource    = newDs;
            listMonitorTimings.SelectedIndex = oldSelection;
        }