public void DataGridViewCmdTrading_Select(UpdateDirection direction, Model.Data.DataRow dataRow)
        {
            string colKey = "instance_no";

            if (dataRow == null || dataRow.Columns == null || dataRow.Columns.ContainsKey(colKey))
            {
                return;
            }

            if (direction == UpdateDirection.Add)
            {
                Dictionary <string, string> colDataMap = new Dictionary <string, string>();
                Model.Data.DataSet          eDataSet   = new Model.Data.DataSet();
                eDataSet.Rows = new List <Model.Data.DataRow>();
                Model.Data.DataRow eRow = new Model.Data.DataRow();
                eRow.Columns = new Dictionary <string, Model.Data.DataValue>();

                foreach (var column in this.dataGridViewBuySell.GridColumns)
                {
                    if (column.ColumnType == Model.UI.HSGridColumnType.None)
                    {
                        continue;
                    }

                    Model.Data.DataValue dataValue = new Model.Data.DataValue();
                    dataValue.Type = column.ValueType;
                    if (column.Name == "bs_commandno")
                    {
                        dataValue.Value = dataRow.Columns["tc_commandno"].Value;
                    }
                    else if (column.ColumnType == Model.UI.HSGridColumnType.Image)
                    {
                        dataValue.Value = column.DefaultValue;
                    }
                    else
                    {
                        dataValue.Value = 0;
                    }

                    colDataMap.Add(column.Name, column.Name);
                    eRow.Columns.Add(column.Name, dataValue);
                }

                eDataSet.Rows.Add(eRow);
                this.dataGridViewBuySell.FillData(eDataSet, colDataMap);
            }
            else if (direction == UpdateDirection.Remove)
            {
                var targetValue = dataRow.Columns["tc_commandno"];
                this.dataGridViewBuySell.DeleteData("bs_commandno", targetValue);
            }
        }
 private void FillEntrustFlow(Model.Data.DataSet dataSet, Dictionary <string, string> colDataMap)
 {
     this.dataGridViewEntrustFlow.FillData(dataSet, colDataMap);
 }
        private Model.Data.DataSet GenerateEntrustFlowData(out Dictionary <string, string> colDataMap)
        {
            Model.Data.DataSet dataSet = new Model.Data.DataSet
            {
                FunctionCode = FunctionCode.QueryEntrustInstance,
                Rows         = new List <Model.Data.DataRow>()
            };

            const string CHAR = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
            Random       r    = new Random((int)DateTime.Now.Ticks);

            colDataMap = new Dictionary <string, string>();
            for (int i = 0; i < 10; i++)
            {
                Model.Data.DataRow dataRow = new Model.Data.DataRow();
                dataRow.Columns = new Dictionary <string, Model.Data.DataValue>();

                foreach (HSGridColumn column in this.dataGridViewEntrustFlow.GridColumns)
                {
                    if (!colDataMap.ContainsKey(column.Name))
                    {
                        colDataMap.Add(column.Name, column.Name);
                    }

                    Model.Data.DataValue dataValue = new Model.Data.DataValue();
                    dataValue.Type = column.ValueType;

                    switch (column.ValueType)
                    {
                    case Model.Data.DataValueType.Int:
                    {
                        dataValue.Value = r.Next(1, 100000);
                    }
                    break;

                    case Model.Data.DataValueType.Float:
                    {
                        dataValue.Value = 100000 * r.NextDouble();
                    }
                    break;

                    case Model.Data.DataValueType.Char:
                    case Model.Data.DataValueType.String:
                    {
                        StringBuilder str = new StringBuilder();
                        for (int j = 0; j < 15; j++)
                        {
                            int temp  = r.Next(0, 1000000);
                            int index = temp % 36;
                            str.Append(CHAR[index]);
                        }

                        dataValue.Value = str.ToString();
                    }
                    break;
                    }

                    dataRow.Columns[column.Name] = dataValue;
                }

                dataSet.Rows.Add(dataRow);
            }

            return(dataSet);
        }