Как изменить public переменную из другой страницы (WPF)?
Оператор new, почитайте.
Вы создаете новый экземпляр, и изменяете или читаете значение только в нем.
Модификатор static.
Позволит сделать объект в единственном экземпляре и разделяемым.
Оператор new создаёт новый экземпляр класса. Советую взять книжку по программированию на C# и прочитать, а лучше даже две: 
Сначала www.ozon.ru/context/detail/id/3658608
Потом www.ozon.ru/context/detail/id/21236101
По поводу вашего вопроса, уже отвечал: Использовать статический класс или синглтон.
Вот пример синглтона:public class CurrentContext
    {
        private CurrentContext()
        {
            
        }
        
        private static Lazy<CurrentContext> instance = new Lazy<CurrentContext>(() => new CurrentContext());
        
        public static CurrentContext Instance
        {
            get { return instance.Value; }
        }
        
        public string Text {get;set;}
    }
Теперь к свойству Text можно обращаться, например так:CurrentContext.Instance.Text="тест";
Вот еще пример приложения : https://dl.dropboxusercontent.com/u/18441732/test/...