public override void RefreshResults()
        {
            AberrationDetectionChartParameters AberrationDetectionChartParameters = (AberrationDetectionChartParameters)Parameters;

            if (!LoadingCombos)
            {
                if (AberrationDetectionChartParameters != null)
                {
                    if (AberrationDetectionChartParameters.ColumnNames.Count > 0 && !String.IsNullOrEmpty(AberrationDetectionChartParameters.ColumnNames[0]))
                    {
                        //CreateInputVariableList();

                        infoPanel.Visibility          = System.Windows.Visibility.Collapsed;
                        waitPanel.Visibility          = System.Windows.Visibility.Visible;
                        messagePanel.MessagePanelType = EpiDashboard.Controls.MessagePanelType.StatusPanel;
                        descriptionPanel.PanelMode    = EpiDashboard.Controls.GadgetDescriptionPanel.DescriptionPanelMode.Collapsed;
                        baseWorker         = new BackgroundWorker();
                        baseWorker.DoWork += new System.ComponentModel.DoWorkEventHandler(Execute);
                        baseWorker.RunWorkerAsync();
                        base.RefreshResults();
                    }
                    else
                    {
                        ClearResults();
                        waitPanel.Visibility = System.Windows.Visibility.Collapsed;
                    }
                }
            }
        }
Ejemplo n.º 2
0
        public void SetChartLabels(AberrationDetectionChartParameters Parameters)
        {
            //EI-98
            xAxisCoordinates.FontSize = Parameters.XAxisFontSize;
            yAxisCoordinates.FontSize = Parameters.YAxisFontSize;

            tblockXAxisLabel.FontSize = Parameters.XAxisLabelFontSize;
            tblockYAxisLabel.FontSize = Parameters.YAxisLabelFontSize;
        }
        /// <summary>
        /// TODO: Rename this method
        /// </summary>
        /// <param name="dataList"></param>
        /// <param name="aberrationDetails"></param>
        private void AddChart(List <AberrationChartData> dataList, DataTable aberrationDetails, string strata)
        {
            AberrationDetectionChartParameters AbDetChartParameters = (AberrationDetectionChartParameters)Parameters;

            Controls.Charting.AberrationChart abChart = new Controls.Charting.AberrationChart();
            abChart.DashboardHelper = this.DashboardHelper;
            abChart.SetChartSize(double.Parse(AbDetChartParameters.ChartWidth.ToString()), double.Parse(AbDetChartParameters.ChartHeight.ToString()));
            abChart.SetChartData(dataList, aberrationDetails);
            abChart.SetChartLabels(AbDetChartParameters);
            panelMain.Children.Add(abChart);
            SetVisuals(abChart);

            if (AbDetChartParameters.StrataVariableNames.Count > 0)
            {
                abChart.IndicatorTitle = strata;
            }

            abChart.Margin = new Thickness(0, 0, 0, 48);
        }
        private void SetVisuals(Controls.Charting.AberrationChart aberrationChart)
        {
            AberrationDetectionChartParameters AbDetChartParameters = (AberrationDetectionChartParameters)Parameters;

            aberrationChart.Chart.InnerMargins = new Thickness(20, 30, 30, 50);

            aberrationChart.YAxisLabel = AbDetChartParameters.YAxisLabel;

            switch (AbDetChartParameters.XAxisLabelType)
            {
            case 3:
                aberrationChart.XAxisLabel = AbDetChartParameters.XAxisLabel;
                break;

            case 1:
                Field field = DashboardHelper.GetAssociatedField(AbDetChartParameters.ColumnNames[0]);
                if (field != null && field is IDataField)
                {
                    RenderableField rField = field as RenderableField;
                    aberrationChart.XAxisLabel = rField.PromptText;
                }
                else
                {
                    aberrationChart.XAxisLabel = AbDetChartParameters.ColumnNames[0];
                }
                break;

            case 2:
                aberrationChart.XAxisLabel = string.Empty;
                break;

            default:
                aberrationChart.XAxisLabel = AbDetChartParameters.ColumnNames[0];
                break;
            }

            aberrationChart.ChartTitle = AbDetChartParameters.ChartTitle;
        }
        protected override void worker_DoWork(object sender, System.ComponentModel.DoWorkEventArgs e)
        {
            lock (syncLock)
            {
                Stopwatch stopwatch = new Stopwatch();
                stopwatch.Start();

                this.Dispatcher.BeginInvoke(new SimpleCallback(SetGadgetToProcessingState));
                this.Dispatcher.BeginInvoke(new SimpleCallback(ClearResults));

                AberrationDetectionChartParameters AbDetChartParameters = (AberrationDetectionChartParameters)Parameters;

                string freqVar        = AbDetChartParameters.ColumnNames[0];
                string weightVar      = AbDetChartParameters.WeightVariableName;
                string strataVar      = string.Empty;
                bool   includeMissing = AbDetChartParameters.IncludeMissing;

                int    lagTime    = DEFAULT_LAG_TIME;
                double deviations = DEFAULT_DEVIATIONS;
                int    timePeriod = DEFAULT_TIME_PERIOD;

                if (!String.IsNullOrEmpty(AbDetChartParameters.LagTime))
                {
                    int.TryParse(AbDetChartParameters.LagTime, out lagTime);
                }
                if (!String.IsNullOrEmpty(AbDetChartParameters.Deviations))
                {
                    double.TryParse(AbDetChartParameters.Deviations, out deviations);
                }
                if (!String.IsNullOrEmpty(AbDetChartParameters.TimePeriod))
                {
                    int.TryParse(AbDetChartParameters.TimePeriod, out timePeriod);
                }

                List <string> stratas = new List <string>();
                if (!string.IsNullOrEmpty(strataVar))
                {
                    stratas.Add(strataVar);
                }

                try
                {
                    RequestUpdateStatusDelegate  requestUpdateStatus  = new RequestUpdateStatusDelegate(RequestUpdateStatusMessage);
                    CheckForCancellationDelegate checkForCancellation = new CheckForCancellationDelegate(IsCancelled);

                    AbDetChartParameters.GadgetStatusUpdate         += new GadgetStatusUpdateHandler(requestUpdateStatus);
                    AbDetChartParameters.GadgetCheckForCancellation += new GadgetCheckForCancellationHandler(checkForCancellation);

                    if (this.DataFilters != null && this.DataFilters.Count > 0)
                    {
                        AbDetChartParameters.CustomFilter = this.DataFilters.GenerateDataFilterString(false);
                    }
                    else
                    {
                        AbDetChartParameters.CustomFilter = string.Empty;
                    }

                    Dictionary <DataTable, List <DescriptiveStatistics> > stratifiedFrequencyTables = DashboardHelper.GenerateFrequencyTable(AbDetChartParameters);
                    List <AberrationChartData> dataList = new List <AberrationChartData>();
                    DataTable aberrationDetails         = new DataTable();

                    aberrationDetails.Columns.Add(new DataColumn("Date", typeof(string)));
                    aberrationDetails.Columns.Add(new DataColumn("Count", typeof(double)));
                    aberrationDetails.Columns.Add(new DataColumn("Expected", typeof(double)));
                    aberrationDetails.Columns.Add(new DataColumn("Difference", typeof(string)));

                    foreach (KeyValuePair <DataTable, List <DescriptiveStatistics> > tableKvp in stratifiedFrequencyTables)
                    {
                        dataList          = new List <AberrationChartData>();
                        aberrationDetails = new DataTable();

                        aberrationDetails.Columns.Add(new DataColumn("Date", typeof(string)));
                        aberrationDetails.Columns.Add(new DataColumn("Count", typeof(double)));
                        aberrationDetails.Columns.Add(new DataColumn("Expected", typeof(double)));
                        aberrationDetails.Columns.Add(new DataColumn("Difference", typeof(string)));

                        double count = 0;
                        foreach (DescriptiveStatistics ds in tableKvp.Value)
                        {
                            count = count + ds.observations;
                        }

                        string    strataValue = tableKvp.Key.TableName;
                        DataTable table       = tableKvp.Key;

                        AddFillerRows(table);

                        double                     lastAvg      = double.NegativeInfinity;
                        double                     lastStdDev   = double.NegativeInfinity;
                        Queue <double>             frame        = new Queue <double>();
                        List <AberrationChartData> actualValues = new List <AberrationChartData>();
                        int rowCount = 1;

                        var rows = from DataRow row in table.Rows
                                   orderby row[0]
                                   select row;

                        foreach (System.Data.DataRow row in rows /*table.Rows*/)
                        {
                            if (!row[freqVar].Equals(DBNull.Value) || (row[freqVar].Equals(DBNull.Value) && includeMissing == true))
                            {
                                DateTime displayValue = DateTime.Parse(row[freqVar].ToString());

                                frame.Enqueue((double)row["freq"]);
                                AberrationChartData actualValue = new AberrationChartData();
                                actualValue.Date   = displayValue; // strataValue;
                                actualValue.Actual = (double)row[1];
                                //actualValue.S = row[0];
                                //dataList.Add(actualValue);
                                if (frame.Count > lagTime - 1 /*6*/)
                                {
                                    double[] frameArray = frame.ToArray();
                                    double   frameAvg   = frameArray.Average();
                                    frame.Dequeue();
                                    double stdDev = CalculateStdDev(frameArray);
                                    if (lastAvg != double.NegativeInfinity)
                                    {
                                        actualValue.Expected = lastAvg;

                                        //dataList.Add(trendValue);
                                        if ((double)row["freq"] > lastAvg + (/*2.99*/ deviations * lastStdDev))
                                        {
                                            double freq = (double)row["freq"];

                                            actualValue.Aberration = freq;
                                            double dvs = (freq - lastAvg) / lastStdDev;
                                            aberrationDetails.Rows.Add(displayValue.ToShortDateString(), (double)row["freq"], Math.Round(lastAvg, 2), Math.Round(dvs, 2).ToString() + " standard deviations");
                                        }
                                    }
                                    lastAvg    = frameAvg;
                                    lastStdDev = stdDev;
                                }


                                dataList.Add(actualValue);

                                rowCount++;
                            }
                        }

                        this.Dispatcher.BeginInvoke(new AddChartDelegate(AddChart), dataList, aberrationDetails, strataValue);
                    }

                    this.Dispatcher.BeginInvoke(new SimpleCallback(RenderFinish));
                }
                catch (Exception ex)
                {
                    this.Dispatcher.BeginInvoke(new RenderFinishWithErrorDelegate(RenderFinishWithError), ex.Message);
                }
                finally
                {
                    stopwatch.Stop();
                    Debug.Print("Aberration Detection chart gadget took " + stopwatch.Elapsed.ToString() + " seconds to complete.");
                    Debug.Print(DashboardHelper.DataFilters.GenerateDataFilterString());
                }
            }
        }
        /// <summary>
        /// Serializes the gadget into Xml
        /// </summary>
        /// <param name="doc">The Xml docment</param>
        /// <returns>XmlNode</returns>
        public override XmlNode Serialize(XmlDocument doc)
        {
            AberrationDetectionChartParameters AbDetChartParameters = (AberrationDetectionChartParameters)Parameters;

            System.Xml.XmlElement element = doc.CreateElement("aberrationChartGadget");
            string xmlString = string.Empty;

            element.InnerXml = xmlString;
            element.AppendChild(SerializeFilters(doc));

            System.Xml.XmlAttribute id           = doc.CreateAttribute("id");
            System.Xml.XmlAttribute locationY    = doc.CreateAttribute("top");
            System.Xml.XmlAttribute locationX    = doc.CreateAttribute("left");
            System.Xml.XmlAttribute collapsed    = doc.CreateAttribute("collapsed");
            System.Xml.XmlAttribute type         = doc.CreateAttribute("gadgetType");
            System.Xml.XmlAttribute actualHeight = doc.CreateAttribute("actualHeight");

            id.Value           = this.UniqueIdentifier.ToString();
            locationY.Value    = Canvas.GetTop(this).ToString("F0");
            locationX.Value    = Canvas.GetLeft(this).ToString("F0");
            collapsed.Value    = "false"; // currently no way to collapse the gadget, so leave this 'false' for now
            type.Value         = "EpiDashboard.Gadgets.Charting.AberrationChartGadget";
            actualHeight.Value = this.ActualHeight.ToString();

            element.Attributes.Append(locationY);
            element.Attributes.Append(locationX);
            element.Attributes.Append(collapsed);
            element.Attributes.Append(type);
            element.Attributes.Append(id);
            if (IsCollapsed == false)
            {
                element.Attributes.Append(actualHeight);
            }

            double height = 600;
            double width  = 800;

            double.TryParse(AbDetChartParameters.ChartHeight.ToString(), out height);
            double.TryParse(AbDetChartParameters.ChartWidth.ToString(), out width);

            //mainVariable
            XmlElement freqVarElement = doc.CreateElement("mainVariable");

            if (AbDetChartParameters.ColumnNames.Count > 0)
            {
                if (!String.IsNullOrEmpty(AbDetChartParameters.ColumnNames[0].ToString()))
                {
                    freqVarElement.InnerText = AbDetChartParameters.ColumnNames[0].ToString().Replace("<", "&lt;");
                    element.AppendChild(freqVarElement);
                }
            }

            //strataVariables
            XmlElement StrataVariableNameElement  = doc.CreateElement("strataVariable");
            XmlElement StrataVariableNamesElement = doc.CreateElement("strataVariables");

            if (AbDetChartParameters.StrataVariableNames.Count == 1)
            {
                StrataVariableNameElement.InnerText = AbDetChartParameters.StrataVariableNames[0].ToString().Replace("<", "&lt;");
                element.AppendChild(StrataVariableNameElement);
            }
            else if (AbDetChartParameters.StrataVariableNames.Count > 1)
            {
                foreach (string strataColumn in AbDetChartParameters.StrataVariableNames)
                {
                    XmlElement strataElement = doc.CreateElement("strataVariable");
                    strataElement.InnerText = strataColumn.Replace("<", "&lt;");
                    StrataVariableNamesElement.AppendChild(strataElement);
                }
                element.AppendChild(StrataVariableNamesElement);
            }

            //weightVariable
            XmlElement weightVariableElement = doc.CreateElement("weightVariable");

            if (!String.IsNullOrEmpty(AbDetChartParameters.WeightVariableName))
            {
                weightVariableElement.InnerText = AbDetChartParameters.WeightVariableName.Replace("<", "&lt;");
                element.AppendChild(weightVariableElement);
            }

            //height
            XmlElement heightElement = doc.CreateElement("height");

            heightElement.InnerText = AbDetChartParameters.ChartHeight.ToString().Replace("<", "&lt;");
            element.AppendChild(heightElement);

            //width
            XmlElement widthElement = doc.CreateElement("width");

            widthElement.InnerText = AbDetChartParameters.ChartWidth.ToString().Replace("<", "&lt;");
            element.AppendChild(widthElement);

            //sort?
            //allValues?
            //includeMissing?

            CustomOutputHeading     = headerPanel.Text;
            CustomOutputDescription = descriptionPanel.Text;

            //customHeading
            XmlElement customHeadingElement = doc.CreateElement("customHeading");

            customHeadingElement.InnerText = AbDetChartParameters.GadgetTitle.Replace("<", "&lt;");
            element.AppendChild(customHeadingElement);

            //customDescription
            XmlElement customDescriptionElement = doc.CreateElement("customDescription");

            customDescriptionElement.InnerText = AbDetChartParameters.GadgetDescription.Replace("<", "&lt;");
            element.AppendChild(customDescriptionElement);

            //customCaption
            XmlElement customCaptionElement = doc.CreateElement("customCaption");

            if (!String.IsNullOrEmpty(CustomOutputCaption))
            {
                customCaptionElement.InnerText = CustomOutputCaption.Replace("<", "&lt;");
            }
            else
            {
                customCaptionElement.InnerText = string.Empty;
            }
            element.AppendChild(customCaptionElement);

            //lagTime
            XmlElement LagTimeElement = doc.CreateElement("lagTime");

            LagTimeElement.InnerText = AbDetChartParameters.LagTime.ToString().Replace("<", "&lt;");
            element.AppendChild(LagTimeElement);

            //deviations
            XmlElement deviationsElement = doc.CreateElement("deviations");

            deviationsElement.InnerText = AbDetChartParameters.Deviations.ToString().Replace("<", "&lt;");
            element.AppendChild(deviationsElement);

            //timePeriod
            XmlElement timePeriodElement = doc.CreateElement("timePeriod");

            timePeriodElement.InnerText = AbDetChartParameters.TimePeriod.ToString().Replace("<", "&lt;");
            element.AppendChild(timePeriodElement);

            //yAxisLabel
            XmlElement yAxisLabelElement = doc.CreateElement("yAxisLabel");

            yAxisLabelElement.InnerText = AbDetChartParameters.YAxisLabel.ToString().Replace("<", "&lt;");
            element.AppendChild(yAxisLabelElement);

            ////yAxisFormatString

            //xAxisLabelType
            XmlElement xAxisLabelTypeElement = doc.CreateElement("xAxisLabelType");

            xAxisLabelTypeElement.InnerText = AbDetChartParameters.XAxisLabelType.ToString().Replace("<", "&lt;");
            element.AppendChild(xAxisLabelTypeElement);

            //xAxisLabel
            XmlElement xAxisLabelElement = doc.CreateElement("xAxisLabel");

            xAxisLabelElement.InnerText = AbDetChartParameters.XAxisLabel.ToString().Replace("<", "&lt;");
            element.AppendChild(xAxisLabelElement);

            //chartTitle
            XmlElement chartTitleElement = doc.CreateElement("chartTitle");

            chartTitleElement.InnerText = AbDetChartParameters.ChartTitle.ToString().Replace("<", "&lt;");
            element.AppendChild(chartTitleElement);

            //EI-98

            //yAxisLabelFontSize
            XmlElement yAxisLabelFontSizeElement = doc.CreateElement("yAxisLabelFontSize");

            yAxisLabelFontSizeElement.InnerText = AbDetChartParameters.YAxisLabelFontSize.ToString().Replace("<", "&lt;");
            element.AppendChild(yAxisLabelFontSizeElement);

            //xAxisLabelFontSize
            XmlElement xAxisLabelFontSize = doc.CreateElement("xAxisLabelFontSize");

            xAxisLabelFontSize.InnerText = AbDetChartParameters.XAxisLabelFontSize.ToString().Replace("<", "&lt;");
            element.AppendChild(xAxisLabelFontSize);

            //yAxisFontSize
            XmlElement yAxisFontSizeElement = doc.CreateElement("yAxisFontSize");

            yAxisFontSizeElement.InnerText = AbDetChartParameters.YAxisFontSize.ToString().Replace("<", "&lt;");
            element.AppendChild(yAxisFontSizeElement);

            //xAxisFontSize
            XmlElement xAxisFontSize = doc.CreateElement("xAxisFontSize");

            xAxisFontSize.InnerText = AbDetChartParameters.XAxisFontSize.ToString().Replace("<", "&lt;");
            element.AppendChild(xAxisFontSize);

            SerializeAnchors(element);
            return(element);
        }
        public AberrationDetectionChartProperties(
            DashboardHelper dashboardHelper,
            IGadget gadget,
            AberrationDetectionChartParameters parameters,
            List <Grid> strataGridList
            )
        {
            InitializeComponent();
            this.DashboardHelper = dashboardHelper;
            this.Gadget          = gadget;
            this.Parameters      = parameters;
            this.StrataGridList  = strataGridList;

            //Variable fields

            List <string> fieldNames       = new List <string>();
            List <string> weightFieldNames = new List <string>();
            List <string> strataFieldNames = new List <string>();

            ColumnDataType columnDataType = ColumnDataType.DateTime | ColumnDataType.UserDefined;

            fieldNames = DashboardHelper.GetFieldsAsList(columnDataType);

            weightFieldNames.Add(string.Empty);
            columnDataType = ColumnDataType.Numeric | ColumnDataType.UserDefined;
            weightFieldNames.AddRange(DashboardHelper.GetFieldsAsList(columnDataType));

            strataFieldNames.Add(string.Empty);
            columnDataType = ColumnDataType.Numeric | ColumnDataType.Boolean | ColumnDataType.Text | ColumnDataType.UserDefined;
            strataFieldNames.AddRange(DashboardHelper.GetFieldsAsList(columnDataType));

            fieldNames.Sort();
            weightFieldNames.Sort();
            strataFieldNames.Sort();

            if (fieldNames.Contains("SYSTEMDATE"))
            {
                fieldNames.Remove("SYSTEMDATE");
            }

            if (DashboardHelper.IsUsingEpiProject)
            {
                if (fieldNames.Contains("RecStatus"))
                {
                    fieldNames.Remove("RecStatus");
                }
                if (weightFieldNames.Contains("RecStatus"))
                {
                    weightFieldNames.Remove("RecStatus");
                }

                if (strataFieldNames.Contains("RecStatus"))
                {
                    strataFieldNames.Remove("RecStatus");
                }
                if (strataFieldNames.Contains("FKEY"))
                {
                    strataFieldNames.Remove("FKEY");
                }
                if (strataFieldNames.Contains("GlobalRecordId"))
                {
                    strataFieldNames.Remove("GlobalRecordId");
                }
            }

            cmbField.ItemsSource           = fieldNames;
            cmbFieldWeight.ItemsSource     = weightFieldNames;
            listboxFieldStrata.ItemsSource = strataFieldNames;

            txtYAxisLabelValue.Text = "Count";
            txtXAxisLabelValue.Text = String.Empty;

            CollectionView           view             = (CollectionView)CollectionViewSource.GetDefaultView(cmbField.ItemsSource);
            PropertyGroupDescription groupDescription = new PropertyGroupDescription("VariableCategory");

            view.GroupDescriptions.Add(groupDescription);

            RowFilterControl = new RowFilterControl(this.DashboardHelper, Dialogs.FilterDialogMode.ConditionalMode, (gadget as AberrationChartGadget).DataFilters, true);
            RowFilterControl.HorizontalAlignment = System.Windows.HorizontalAlignment.Left;
            panelFilters.Children.Add(RowFilterControl);

            //EI-98
            txtXAxisFontSize.Text = parameters.XAxisFontSize.ToString();
            txtYAxisFontSize.Text = parameters.YAxisFontSize.ToString();

            txtXAxisLabelFontSize.Text = parameters.XAxisLabelFontSize.ToString();
            txtYAxisLabelFontSize.Text = parameters.YAxisLabelFontSize.ToString();

            txtWidth.PreviewKeyDown      += new KeyEventHandler(txtInput_PositiveIntegerOnly_PreviewKeyDown);
            txtHeight.PreviewKeyDown     += new KeyEventHandler(txtInput_PositiveIntegerOnly_PreviewKeyDown);
            txtLagTime.PreviewKeyDown    += new KeyEventHandler(txtInput_PositiveIntegerOnly_PreviewKeyDown);
            txtDeviations.PreviewKeyDown += new KeyEventHandler(txtInput_PositiveIntegerOnly_PreviewKeyDown);
            txtTimePeriod.PreviewKeyDown += new KeyEventHandler(txtInput_PositiveIntegerOnly_PreviewKeyDown);

            #region Translation

            lblConfigExpandedTitleTxt.Text = DashboardSharedStrings.GADGET_CONFIG_TITLE_ABERRATION_CHART;
            tbtnVariables.Title            = DashboardSharedStrings.GADGET_TABBUTTON_VARIABLES;
            tbtnVariables.Description      = DashboardSharedStrings.GADGET_TABDESC_ABERRATION_CHART;
            tbtnSorting.Title                 = DashboardSharedStrings.GADGET_TABBUTTON_SORTING;
            tbtnSorting.Description           = DashboardSharedStrings.GADGET_TABDESC_SORTING;
            tbtnDisplay.Title                 = DashboardSharedStrings.GADGET_TABBUTTON_DISPLAY;
            tbtnDisplay.Description           = DashboardSharedStrings.GADGET_TABDESC_DISPLAY;
            tbtnDisplayLabels.Title           = DashboardSharedStrings.GADGET_TABBUTTON_LABELS;
            tbtnDisplayLabels.Description     = DashboardSharedStrings.GADGET_TABDESC_LABELS;
            tbtnFilters.Title                 = DashboardSharedStrings.GADGET_TABBUTTON_FILTERS;
            tbtnFilters.Description           = DashboardSharedStrings.GADGET_TABDESC_FILTERS;
            tblockPanelVariablesTxt.Text      = DashboardSharedStrings.GADGET_PANELHEADER_VARIABLES;
            tblockPanelSortingTxt.Text        = DashboardSharedStrings.GADGET_PANELHEADER_SORTING;
            tblockGroupingSubheaderTxt.Text   = DashboardSharedStrings.GADGET_PANELSUBHEADER_GROUPING;
            tblockPanelDisplayTxt.Text        = DashboardSharedStrings.GADGET_PANELHEADER_DISPLAY;
            tblockTitleNDescSubheaderTxt.Text = DashboardSharedStrings.GADGET_PANELSUBHEADER_TITLENDESC;
            tblockTitleTxt.Text               = DashboardSharedStrings.GADGET_GADET_TITLE;
            tblockDescTxt.Text                = DashboardSharedStrings.GADGET_DESCRIPTION;
            tblockDimensionsTxt.Text          = DashboardSharedStrings.GADGET_DIMENSIONS;
            tblockWidth.Text                  = DashboardSharedStrings.GADGET_WIDTH;
            tblockHeight.Text                 = DashboardSharedStrings.GADGET_HEIGHT;
            tblockYAxisSubheaderTxt.Text      = DashboardSharedStrings.GADGET_PANELSUBHEADER_YAXIS;
            tblockYAxisLabelValue.Text        = DashboardSharedStrings.GADGET_YAXIS_LABEL;
            tblockYAxisLabelFontSize.Text     = DashboardSharedStrings.GADGET_YAXIS_LABEL_FONTSIZE;
            tblockYAxisFontSize.Text          = DashboardSharedStrings.GADGET_YAXIS_DATA_FONTSIZE;
            tblockXAxisSubheaderTxt.Text      = DashboardSharedStrings.GADGET_XAXIS;
            tblockXAxisLabelType.Text         = DashboardSharedStrings.GADGET_XAXIS_LABEL_TYPE;
            tblockXAxisLabelValue.Text        = DashboardSharedStrings.GADGET_XAXIS_LABEL;
            tblockXAxisLabelFontSize.Text     = DashboardSharedStrings.GADGET_XAXIS_LABEL_FONTSIZE;
            tblockXAxisFontSize.Text          = DashboardSharedStrings.GADGET_XAXIS_DATA_FONTSIZE;
            tblockTitleSubTitleTxt.Text       = DashboardSharedStrings.GADGET_SUBHEADER_TITLESUBTITLE;
            tblockChartTitleValue.Text        = DashboardSharedStrings.GADGET_CHART_TITLE;
            tblockPanelDataFilterTxt.Text     = DashboardSharedStrings.GADGET_PANELHEADER_DATA_FILTER;
            tblockAnyFilterGadgetOnlyTxt.Text = DashboardSharedStrings.GADGET_FILTER_GADGET_ONLY;
            tblockMainVariable.Text           = DashboardSharedStrings.GADGET_DATE_VARIABLE;
            tblockWeightVariable.Text         = DashboardSharedStrings.GADGET_COUNT_VARIABLE_OPT;
            tblockLagTimeDays.Text            = DashboardSharedStrings.GADGET_LAG_TIME_DAYS;
            tblockThresh.Text                 = DashboardSharedStrings.GADGET_THRESHOLD;
            tblockTimePeriod.Text             = DashboardSharedStrings.GADGET_DAYS_PRIOR;
            tblockIndicatorTxt.Text           = DashboardSharedStrings.GADGET_INDICATOR_VARIABLES_OPT;
            tblockPanelLabelsTxt.Text         = DashboardSharedStrings.GADGET_PANELSHEADER_LABELS;
            btnOKTxt.Text     = DashboardSharedStrings.BUTTON_OK;
            btnCancelTxt.Text = DashboardSharedStrings.BUTTON_CANCEL;

            #endregion // Translation
        }