private void parametersBox_SelectedIndexChanged(object sender, EventArgs e) { // Get the parameters name int partIndex = meshPartBox.SelectedIndex; string parametersName = (string)parametersBox.Items[parametersBox.SelectedIndex]; if (parametersName == DefaultParametersString) { // Set default parameters mMaterial.SetPartDefaultParameters(partIndex); effectPropGrid.Refresh(); } else if (parametersName == NewParametersString) { // Create new parameters if (saveParxFileDialog.ShowDialog() == DialogResult.OK) { string fileName = saveParxFileDialog.FileName; EffectParameterListSave list = EffectParameterListSave.FromEffect(mMaterial.Parts[partIndex].Effect); // Save the file list.Save(fileName); // Add the file mMaterial.AddParameters(fileName, mMaterial.Parts[partIndex].EffectName, partIndex); // Recreate the parameters list CreateParametersList(mMaterial.Parts[partIndex].EffectName); } } else { // Set parameters on part mMaterial.SetPartParameters(partIndex, parametersName); effectPropGrid.Refresh(); } }