Я бы согласился с рекомендацией Дэвида Томаса Гарсии, если вы можете сохранить значение в базе данных, используя перечисление (в виде целого числа или любого другого, подходящего для количества вариантов, которые у вас будут).
Если это не вариант, и вы обязаны хранить их в базе данных в виде строки символов, я бы сделал что-то вроде следующего:
private void LoadData()
{
string dbVal = DataAccess.GetDbVal(); //Get your value from the database.
chkComma.Checked = dbVal.Contains(",");
chkDash.Checked = dbVal.Contains("-");
}
private void SaveData()
{
string dbVal = "";
if(chkComma.Checked)
dbVal += ",";
if(chkDash.Checked)
dbVal += "-";
DataAccess.SaveDbVal(dbVal); //Send the value of dbVal to your data layer to be saved.
}
Обратите внимание, что это не включает никакого разделения значений, которые будут сохранены в значении, хранящемся в базе данных, но если вам нужно, вы можете использовать Список и делать то, что Дэвид Томас Гарсия упомянул вместе с .ToArray () Join ( ""). в SaveData () и в LoadData () просто сделайте dbVal списком, и синтаксис не нуждается в изменении.