DictionaryEntry не содержит прямой ссылки на фактические значения, внутренняя структура данных совершенно иная. Следовательно, установка значения для DictionaryEntry не повлияет на значения, фактически находящиеся в Hashtable.
Чтобы установить значение, вы должны использовать индексатор. Вы можете перечислять ключи скорее по парам ключ-значение. Этот код эквивалентен тому, что вы пробовали с DictionaryEntry:
IDictionary dictionary = new Hashtable();
const string key = "key";
const string value = "value";
dictionary[key] = null; // set some trigger here
foreach(var k in dictionary.Keys.OfType<object>().ToArray())
{
if(dictionary[k] == null)
dictionary[k] = value;
}