} // End Method /// <summary> /// バインド項目を再読み込みします。 /// </summary> /// <param name="TableElementDataTable">Table Element Data Table</param> /// <param name="TableWeaponTypeDataTable">Weapon Type Data Table</param> public void ReloadDataTable(__table_elementDataTable TableElementDataTable, __table_weapon_typeDataTable TableWeaponTypeDataTable) { comboEquipItemGroup.DataSource = TableWeaponTypeDataTable.Copy(); comboAttackItemGroup.DataSource = TableWeaponTypeDataTable.Copy(); comboElement1.DataSource = TableElementDataTable.Copy(); comboElement2.DataSource = TableElementDataTable.Copy(); } // End Method
//-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- // Property //-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- // Constructor Method //-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- /// <summary> /// コンストラクタメソッド /// </summary> /// <param name="DataTable">Skill Data Table</param> /// <param name="TableWeaponTypeDataTable">Table Weapon Type Data Table</param> /// <param name="ElementDataTable">Element Data Table</param> public FormSkill(__table_skillDataTable DataTable, __table_weapon_typeDataTable TableWeaponTypeDataTable, __table_elementDataTable ElementDataTable) { InitializeComponent(); // 割り当て。編集がリアルタイムに適応されるようになる SkillDataTable = DataTable; // コンボボックスの設定 wTypeDataGridViewComboBoxColumn.DataSource = TableWeaponTypeDataTable.Copy(); wTypeDataGridViewComboBoxColumn.DisplayMember = "WeaponTypeName"; wTypeDataGridViewComboBoxColumn.ValueMember = "WeaponTypeID"; element1DataGridViewComboBoxColumn.DataSource = ElementDataTable.Copy(); element1DataGridViewComboBoxColumn.ValueMember = "ElementID"; element1DataGridViewComboBoxColumn.DisplayMember = "ElementName"; element2DataGridViewComboBoxColumn.DataSource = ElementDataTable.Copy(); element2DataGridViewComboBoxColumn.ValueMember = "ElementID"; element2DataGridViewComboBoxColumn.DisplayMember = "ElementName"; element3DataGridViewComboBoxColumn.DataSource = ElementDataTable.Copy(); element3DataGridViewComboBoxColumn.ValueMember = "ElementID"; element3DataGridViewComboBoxColumn.DisplayMember = "ElementName"; element4DataGridViewComboBoxColumn.DataSource = ElementDataTable.Copy(); element4DataGridViewComboBoxColumn.ValueMember = "ElementID"; element4DataGridViewComboBoxColumn.DisplayMember = "ElementName"; element5DataGridViewComboBoxColumn.DataSource = ElementDataTable.Copy(); element5DataGridViewComboBoxColumn.ValueMember = "ElementID"; element5DataGridViewComboBoxColumn.DisplayMember = "ElementName"; element6DataGridViewComboBoxColumn.DataSource = ElementDataTable.Copy(); element6DataGridViewComboBoxColumn.ValueMember = "ElementID"; element6DataGridViewComboBoxColumn.DisplayMember = "ElementName"; element7DataGridViewComboBoxColumn.DataSource = ElementDataTable.Copy(); element7DataGridViewComboBoxColumn.ValueMember = "ElementID"; element7DataGridViewComboBoxColumn.DisplayMember = "ElementName"; element8DataGridViewComboBoxColumn.DataSource = ElementDataTable.Copy(); element8DataGridViewComboBoxColumn.ValueMember = "ElementID"; element8DataGridViewComboBoxColumn.DisplayMember = "ElementName"; element9DataGridViewComboBoxColumn.DataSource = ElementDataTable.Copy(); element9DataGridViewComboBoxColumn.ValueMember = "ElementID"; element9DataGridViewComboBoxColumn.DisplayMember = "ElementName"; element10DataGridViewComboBoxColumn.DataSource = ElementDataTable.Copy(); element10DataGridViewComboBoxColumn.ValueMember = "ElementID"; element10DataGridViewComboBoxColumn.DisplayMember = "ElementName"; } // End Method
//-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- // Property //-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- //-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- // Constructor Method //-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- /// <summary> /// コンストラクタメソッド /// </summary> /// <param name="DataTable">Unit Data Table</param> /// <param name="TypeDataTable">Weapon Type Data Table</param> public FormUnit(__table_unitDataTable DataTable, __table_weapon_typeDataTable TypeDataTable) { InitializeComponent(); // 割り当て。編集がリアルタイムに適応されるようになる UnitDataTable = DataTable; // コンボボックスの設定 typeDataGridViewComboBoxColumn.DataSource = TypeDataTable; typeDataGridViewComboBoxColumn.ValueMember = "WeaponTypeID"; typeDataGridViewComboBoxColumn.DisplayMember = "WeaponTypeName"; } // End Method
} // End Method //-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- // Pubilc Method //-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- /// <summary> /// DataTableの設定をします。外部から引数を利用することでコントロール側に持ってこれることが判明。 /// </summary> /// <param name="TableSkillDataTable">Skill Data Table</param> /// <param name="TableWeaponTypeDataTable">Weapon Type Data Table</param> public void SetDataBindings(__table_skillDataTable TableSkillDataTable, __table_weapon_typeDataTable TableWeaponTypeDataTable) { // データ項目の作成 // データ項目が少なく、わざわざデータベース化する必要のない項目 //-------------------------------------------------- // Air DataTable AirDataTable = new DataTable(); AirDataTable.Columns.Add("DataID", Type.GetType("System.Byte")); AirDataTable.Columns.Add("DataName", Type.GetType("System.String")); // 項目配列。Listでもよかったかも...? byte[] AirDataValue = new byte[] { 0, 1, 2 }; string[] AirDataName = new string[] { "無効", "有効", "特効" }; // 項目の構築 for (int i = 0; i < AirDataValue.Length; i++) { DataRow row = AirDataTable.NewRow(); // カラムにデータを割り当てる row["DataID"] = AirDataValue[i]; row["DataName"] = AirDataName[i]; // Debug文 Debug.WriteLine("Air Data Table Row Data:" + AirDataValue[i] + "\t" + AirDataName[i] + ";"); // 追加する AirDataTable.Rows.Add(row); } // End Loop //-------------------------------------------------- // Use Weapon DataTable UseWeaponDataTable = new DataTable(); UseWeaponDataTable.Columns.Add("DataID", Type.GetType("System.Byte")); UseWeaponDataTable.Columns.Add("DataName", Type.GetType("System.String")); // 項目配列。Listでもよかったかも...? byte[] UseWeaponDataValue = new byte[] { 0, 1 }; string[] UseWeaponDataName = new string[] { "無効", "有効" }; // 項目の構築 for (int i = 0; i < UseWeaponDataValue.Length; i++) { DataRow row = UseWeaponDataTable.NewRow(); // カラムにデータを割り当てる row["DataID"] = UseWeaponDataValue[i]; row["DataName"] = UseWeaponDataName[i]; // Debug文 Debug.WriteLine("UseWeapon Data Table Row Data:" + UseWeaponDataValue[i] + "\t" + UseWeaponDataName[i] + ";"); // 追加する UseWeaponDataTable.Rows.Add(row); } // End Loop //-------------------------------------------------- // Target DataTable TargetDataTable = new DataTable(); TargetDataTable.Columns.Add("DataID", Type.GetType("System.SByte")); TargetDataTable.Columns.Add("DataName", Type.GetType("System.String")); // 項目配列。Listでもよかったかも...? byte[] TargetDataValue = new byte[] { 0, 1, 2, 3, 4, 5 }; string[] TargetDataName = new string[] { "敵単体", "敵全体", "全体", "味方単体", "味方全体", "敵ランダム単体" }; // 項目の構築 for (int i = 0; i < TargetDataValue.Length; i++) { DataRow row = TargetDataTable.NewRow(); // カラムにデータを割り当てる row["DataID"] = TargetDataValue[i]; row["DataName"] = TargetDataName[i]; // Debug文 Debug.WriteLine("Target Data Table Row Data:" + TargetDataValue[i] + "\t" + TargetDataName[i] + ";"); // 追加する TargetDataTable.Rows.Add(row); } // End Loop //-------------------------------------------------- // Type DataTable TypeDataTable = new DataTable(); TypeDataTable.Columns.Add("DataID", Type.GetType("System.SByte")); TypeDataTable.Columns.Add("DataName", Type.GetType("System.String")); // 項目配列。Listでもよかったかも...? // 内容を覚えていないため、未確定 sbyte[] TypeDataValue = new sbyte[] { -1, 0, 1, 2, 3, 4, 5, 6 }; string[] TypeDataName = new string[] { "*使用不可*", "近接", "間接", "魔法", "不明", "不明", "不明", "回復" }; // 項目の構築 for (int i = 0; i < TypeDataValue.Length; i++) { DataRow row = TypeDataTable.NewRow(); // カラムにデータを割り当てる row["DataID"] = TypeDataValue[i]; row["DataName"] = TypeDataName[i]; // Debug文 Debug.WriteLine("Type Data Table Row Data:" + TypeDataValue[i] + "\t" + TypeDataName[i] + ";"); // 追加する TypeDataTable.Rows.Add(row); } // End Loop //---------------------------------------------------------------------------------------------------- // コンボボックスの設定 comboWeaponType.DataSource = TableWeaponTypeDataTable.Copy(); comboWeaponType.DisplayMember = "WeaponTypeName"; comboWeaponType.ValueMember = "WeaponTypeID"; comboWeaponEffect.DataSource = UseWeaponDataTable; comboWeaponEffect.DisplayMember = "DataName"; comboWeaponEffect.ValueMember = "DataID"; comboAir.DataSource = AirDataTable; comboAir.DisplayMember = "DataName"; comboAir.ValueMember = "DataID"; comboTarget.DataSource = TargetDataTable; comboTarget.DisplayMember = "DataName"; comboTarget.ValueMember = "DataID"; comboType.DataSource = TypeDataTable; comboType.DisplayMember = "DataName"; comboType.ValueMember = "DataID"; //---------------------------------------------------------------------------------------------------- // データバインドの設定 textSkillID.DataBindings.Add(new Binding("Text", TableSkillDataTable, "SkillID", true)); textSkillName.DataBindings.Add(new Binding("Text", TableSkillDataTable, "SkillName", true)); numericPercent.DataBindings.Add(new Binding("Value", TableSkillDataTable, "Percent", true)); numericFirst.DataBindings.Add(new Binding("Value", TableSkillDataTable, "First", true)); numericSPCost.DataBindings.Add(new Binding("Value", TableSkillDataTable, "SPCost", true)); numericTPCost.DataBindings.Add(new Binding("Value", TableSkillDataTable, "TPCost", true)); numericATCount.DataBindings.Add(new Binding("Value", TableSkillDataTable, "ATCount", true)); numericHit.DataBindings.Add(new Binding("Value", TableSkillDataTable, "SHit", true)); numericCritical.DataBindings.Add(new Binding("Value", TableSkillDataTable, "Critical", true)); comboWeaponType.DataBindings.Add(new Binding("SelectedValue", TableSkillDataTable, "WType", true)); comboWeaponEffect.DataBindings.Add(new Binding("SelectedValue", TableSkillDataTable, "UseWeapon", true)); comboAir.DataBindings.Add(new Binding("SelectedValue", TableSkillDataTable, "Air", true)); comboTarget.DataBindings.Add(new Binding("SelectedValue", TableSkillDataTable, "Target", true)); comboType.DataBindings.Add(new Binding("SelectedValue", TableSkillDataTable, "Type", true)); textInfo.DataBindings.Add(new Binding("Text", TableSkillDataTable, "Info", true)); PowerGraph.SetDataBindings(TableSkillDataTable); //---------------------------------------------------------------------------------------------------- // デザイナーの設定 Anchor = (AnchorStyles.Top | AnchorStyles.Bottom | AnchorStyles.Left); textInfo.Anchor = (AnchorStyles.Bottom | AnchorStyles.Left); } // End Method
} // End Method /// <summary> /// バインド項目を再読み込みします。 /// </summary> /// <param name="TableElementDataTable">Table Element Data Table</param> /// <param name="TableWeaponTypeDataTable">Weapon Type Data Table</param> public void ReloadDataTable(__table_weapon_typeDataTable TableWeaponTypeDataTable) { comboWeaponType.DataSource = TableWeaponTypeDataTable.Copy(); } // End Method
} // End Method //-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- // Pubilc Method //-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- /// <summary> /// DataTableの設定をします。外部から引数を利用することでコントロール側に持ってこれることが判明。 /// </summary> /// <param name="TableWeaponDataTable">Weapon Data Table</param> /// <param name="TableElementDataTable">Table Element Data Table</param> /// <param name="TableWeaponTypeDataTable">Weapon Type Data Table</param> public void SetDataBindings(__table_weaponDataTable TableWeaponDataTable, __table_elementDataTable TableElementDataTable, __table_weapon_typeDataTable TableWeaponTypeDataTable) { // データ項目の作成 // データ項目が少なく、わざわざデータベース化する必要のない項目 //-------------------------------------------------- // Target DataTable TargetDataTable = new DataTable(); TargetDataTable.Columns.Add("DataID", Type.GetType("System.Byte")); TargetDataTable.Columns.Add("DataName", Type.GetType("System.String")); // 項目配列。Listでもよかったかも...? byte[] TargetDataValue = new byte[] { 0, 1 }; string[] TargetDataName = new string[] { "単体", "全体" }; // 項目の構築 for (int i = 0; i < TargetDataValue.Length; i++) { DataRow row = TargetDataTable.NewRow(); // カラムにデータを割り当てる row["DataID"] = TargetDataValue[i]; row["DataName"] = TargetDataName[i]; // Debug文 Debug.WriteLine("Target Data Table Row Data:" + TargetDataValue[i] + "\t" + TargetDataName[i] + ";"); // 追加する TargetDataTable.Rows.Add(row); } // End Loop //-------------------------------------------------- // EType DataTable HandDataTable = new DataTable(); HandDataTable.Columns.Add("DataID", Type.GetType("System.Byte")); HandDataTable.Columns.Add("DataName", Type.GetType("System.String")); // 項目配列。Listでもよかったかも...? byte[] HandDataValue = new byte[] { 1, 2 }; string[] HandDataName = new string[] { "片手", "両手" }; // 項目の構築 for (int i = 0; i < HandDataValue.Length; i++) { DataRow row = HandDataTable.NewRow(); // カラムにデータを割り当てる row["DataID"] = HandDataValue[i]; row["DataName"] = HandDataName[i]; // Debug文 Debug.WriteLine("Hand Data Table Row Data:" + HandDataValue[i] + "\t" + HandDataName[i] + ";"); // 追加する HandDataTable.Rows.Add(row); } // End Loop //---------------------------------------------------------------------------------------------------- // コンボボックスの設定 comboEquipItemGroup.DataSource = TableWeaponTypeDataTable.Copy(); comboEquipItemGroup.DisplayMember = "WeaponTypeName"; comboEquipItemGroup.ValueMember = "WeaponTypeID"; comboAttackItemGroup.DataSource = TableWeaponTypeDataTable.Copy(); comboAttackItemGroup.DisplayMember = "WeaponTypeName"; comboAttackItemGroup.ValueMember = "WeaponTypeID"; comboTarget.DataSource = TargetDataTable; comboTarget.DisplayMember = "DataName"; comboTarget.ValueMember = "DataID"; comboEType.DataSource = HandDataTable; comboEType.DisplayMember = "DataName"; comboEType.ValueMember = "DataID"; //---------------------------------------------------------------------------------------------------- // データバインドの設定 // Weapon Data専用で必要なもの textItemID.DataBindings.Add(new Binding("Text", TableWeaponDataTable, "WeaponID", true)); textItemName.DataBindings.Add(new Binding("Text", TableWeaponDataTable, "WeaponName", true)); numericSPC.DataBindings.Add(new Binding("Value", TableWeaponDataTable, "SPC", true)); numericATC.DataBindings.Add(new Binding("Value", TableWeaponDataTable, "ATC", true)); comboEquipItemGroup.DataBindings.Add(new Binding("SelectedValue", TableWeaponDataTable, "Type", true)); comboAttackItemGroup.DataBindings.Add(new Binding("SelectedValue", TableWeaponDataTable, "AType", true)); comboTarget.DataBindings.Add(new Binding("SelectedValue", TableWeaponDataTable, "Target", true)); comboEType.DataBindings.Add(new Binding("SelectedValue", TableWeaponDataTable, "EType", true)); // 共通設定 CommonSettings(TableWeaponDataTable, TableElementDataTable); } // End Method