Используя UI Automation в Windows, я придумал что-то вроде этого:
void Window2_Loaded(object sender, RoutedEventArgs e)
{
var hwnd = new System.Windows.Interop.WindowInteropHelper(this).Handle;
var el = AutomationElement.FromHandle(hwnd);
Object oPattern = null;
if (el.TryGetCurrentPattern(WindowPattern.Pattern, out oPattern))
{
var pattern = oPattern as WindowPattern;
this.Title = pattern.Current.IsModal.ToString();
}
}
Но это кажется неработоспособным. Существует свойство IsModal http://msdn.microsoft.com/en-us/library/system.windows.automation.provider.iwindowprovider.ismodal.aspx должен быть правильный способ получить AutomationElement для окна и проверить, является ли свойство IsModal истинным с помощью Automation.
Вам нужно инициализировать @product. Это можно сделать так:
before_action :set_document, only: [:show, :edit, :update, :destroy]
def set_document
@document = Document.find(params[:id])
end
Вы можете пометить контроллер с помощью
rails g scaffold_controller Document
, чтобы увидеть, как именно rails генерирует классы для модели.
В вашем route.rb должно быть
resources: products