.NET Tutorials, Forums, Interview Questions And Answers
Welcome :Guest
Sign In
Win Surprise Gifts!!!

Top 5 Contributors of the Month
david stephan
Gaurav Pal
Post New Web Links

Another 'ViewModel closes the View' question...

Posted By:      Posted Date: September 16, 2010    Points: 0   Category :WPF
Hi all, I'm somewhere in the middle of the learning curve that is the path to MVVM utopia!My question really concerns the ability to close a view from a view model.I don't want to be guilty of trying to force a solution to fit a pattern, but MVVM fits so well in all other areas there's just this one bit left to figure out.The project I'm working on is a system analagous to Microsoft Outlook.You have a main view (window) which has a list of things.These things could be messages or contacts in Outlook.From the main view you have the option to create a new thing or open an existing one.Regardless of which option you choose, a new view (window) opens to present you with a form for editing.From this point on, each new view that opens has the following options (relevant to my question)...1, Save.2, Close.3, Save & Close.Save is pretty straightforward, is just a property on the viewmodel which returns an ICommand (RelayCommand/DelegateCommand).Close is also pretty straightforward, that's just the cross in the top right hand corner of the window.Save & Close, however, is different. With option 2, the close is actually just a part of windows, we're not writing any code to do this.So how would I go about implementing option 3? Where the viewmodel first needs to persist the changes and then needs to close the view?Many thanks,MQCA

View Complete Post

More Related Resource Links

Model View ViewModel question



I´m playing around with XAML and MVVM, and have a question about the wiring between the model and the viewmodel:

If I have a model that updates its data on random times, what wiring is used between the model and the viewmodel to let the viewmodel know that the model has changed?.

Between the view and viewmodel a bindings and NotifyPropertyChanged would take care of this.


Trying to learn

Design Patterns: Problems and Solutions with Model-View-ViewModel


The Model-View-ViewModel (MVVM) design pattern describes a popular approach for building Windows Presentation Foundation or Microsoft Silverlight applications. Robert McCarter shows you how the ViewModel works, and discuss some benefits and issues involved in implementing a ViewModel in your code.

Robert McCarter

MSDN Magazine July 2010

Silverlight Patterns: Model-View-ViewModel In Silverlight 2 Apps


In this article, you'll learn how to avoid problematic tight coupling by applying the Model-View-ViewModel pattern in Silverlight 2.

Shawn Wildermuth

MSDN Magazine March 2009

Patterns: WPF Apps With The Model-View-ViewModel Design Pattern


In this article we explain just how simple it can be to build a WPF application the right way using the MVVM Pattern.

Josh Smith

MSDN Magazine February 2009

General Controller to View logic question

Hello, I am currently learning the MVC2 Framework and I have a brief question in terms of my logic and if their are any flaws in it. I created a basic example in a couple of minutes that demonstrates the way I think about it. public ViewResult Index() { return View(); } public ViewResult Cookies() { return View(new Cookie()); } public ViewResult CookiesInput(Cookie cookie) { return View(cookie); }<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server"> <h2>I really like cookies</h2> Would you like a cookie? <% using (Html.BeginForm("Cookies", "Example")) { %> <p><input type="submit" value="Yes" /></p> <% } %> </asp:Content> <asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server"> <h2>Cookies</h2> <% using (Html.BeginForm("CookiesInput", "Example")) { %> <%= Html.EditorForModel() %> <p><input type="submit" value="Gimme" /></p> <% } %> </asp:Content><asp:Content ID="Content2" ContentPlaceHolderID="MainConten

Noob Question - Using Linq in View

I just inherited an MVC2 application. So far my only experience with MVC is reading the Nerd Dinner sample chapter and downloading the nerd dinner app. I do plan to dive much deeper but i need a quick answer because i have to hit the ground running. So basically in the main Index view the view model is being passed as an IQueryable. Then he is doing some queries on the view model to loop through the data. See example below:<% if (Model.Where(w => w.State == workflowStep.Key).Count() > 0) { %>To me, even though minor, this is business logic and shouldn't be in the view. Shouldn't any type of logic like this be sorted out before you get to the view? Or is this common practice in MVC?Basically i want to know if I should spend time refactoring this thing or just go with the flow.  Thanks.

Is it possible to pass more than one ViewModel to the View?

In my page there is a Login form. It looks like <form action="" method="post"> Login: <%:Html.TextBoxFor(m=>m.Login) %><br /> Password: <%:Html.PasswordFor(m=>m.Password) %><br /> <input type=submit value="Log In" /> <%: Html.ActionLink("Forgot my password","forgot","account") %> </form> But at the same time in this page I need to render some info from another ViewModel. Is it possible to write in action something like return View(Model1, Model2); ?And how could I get access to these ViewModels in this case?

Easy Calendar View Question - I hope

I have a Calendar in Sharepoint Foundation 2010. The only thing I want to do but can't is to have the Event Description text shown along with the Event title. Is it possible? Some event last several hours so there is plenty of space to show the text. TIA

Fully Embracing the Model-View-ViewModel Pattern in WPF

I'm trying to get my head around the M-V-VM pattern as it is used with WPF. So far I have been successful in implementing this pattern but it's perfect (yet). There are a number of common UI workflows that I can't figure out how to implement in this pattern such as:1. A user clicks a button that should show a modal dialog box. Usually the VM has a command on it that the button is bound to and something executes. However, what needs to execute is a UI behavior (opening the dialog box). The VM should not open the dialog box (that would be wrong because the VM now has to know something about the UI). The Window or UserControl or Page inwhich the command was initiated should open the dialog box.2. A user clicks a button that executes a command on a VM. However, this is a long-running command and I'd like to show the WaitCursor during this operation. This is a UI function, not a VM function. Should the VM fire an event? And if so, how does the Xaml handle it?So, M-V-VM experts out there, what am I missing? Help me to see the light...Dave

(MVVM): Call Method On ViewModel From View

Hey All,   In my View, I would like to call a method on my ViewModel (all from XAML). View: <!--Parameters--> <ListView Grid.Row="2" DataContext="{Binding}" ItemsSource="{Binding}"> <ListView.View> <GridView AllowsColumnReorder="True"> <GridViewColumn Header="Name" DisplayMemberBinding="{Binding Key}"/> <GridViewColumn Header="Value"> <GridViewColumn.CellTemplate> <DataTemplate> <TextBox Text="{Binding Value, Mode=OneWay}" MinWidth="100" /> </DataTemplate> </GridViewColumn.CellTemplate> </GridViewColumn> </GridView> </ListView.View> </ListView> ViewModel (the Method I want to call): public ReadOnlyScriptParameterCollection GetParameters(string scriptFullTypeName) { ReadOnlyScriptParameterCollection sps = null; var scriptHost = ScriptHost.Create<JdsScriptHost>(); scriptHost.LoadFromAssembly(ScriptAssemblyPath, scriptFullTypeName); sps = scriptHost.ScriptParameters; return sps; } Is there

tree view OnPrerender Question



Im having the following problem i have a treeview that opens on a pop up window and is being populated from a database table.

What i want is to  add a onClick event to each node as the treeview loads so when i click on a node a javascript function can be called and do something.

How can i take the value of each node that is being populated cause i need to pass it as an argument at the javascript function

public void myTreeView_OnPreRender(object sender, EventArgs e)

        myTreeView.Attributes.Add("onclick", "javascript:doSomething('" + nodeValue + "')");


Thanks in advance


Problem with View and ViewModel


Hi Guys!

I've a little problem with a View and its ViewModel for a basic Search Page.

I've created a View Model with 2 properties: Name (string) and NameType (Selectlist).

I've created a main strongly-typed View (Index) with these fields and I've added in the bottom of the form an Ajax.ActionLink to call the Method to search data in my DB.

The destination Method requires to fill the same View Model to catch the data inserted in the form and it launches the search engine.

Now the method returns only the data inserted in the form, but the View Model Object received is Null.

I can't find where is the problem, anyone can help me?

Here the code

Page whit form anche Ajax Action Link

<% using (Html.BeginForm()) {%>
        <%: Html.ValidationSummary(true) %>
                <%: Html.LabelFor(model => model.Name) %>

Strongly typed view and viewModel


Hello together,

I have a question about strongly typed views.

I already have my business objects (based on the persistence framework xpo form dev express). These objects have some associations.

eg. an article can have some user comments


My question now is, should my strongly typed views directly base on this objects (even if these objects have many properties i never need to present)

or should i create additional classes containing only the properties of the objects which i like to present.

eg. articleViewModel and commentViewModel.

where a articleViewModel can have associations with multiple commentViewModel

The advantage which i see in the second example is, that i can easier validate the viewModels.

However it means a lot of extra work, because i need to create for all objects which i like to present a viewModel with the corresponding

associations and properties.

Thanks a lot!

Regards Vincenzo

hiding elements in a view - another newbe question



I'm trying to realise how to make a div on the page hidden, from the controller.

the situation is this:

i have 2 radioboxes, which need to fill a hidden label with thier value, dependant on the one selected.

the second case is gettin the value in the ID part of the link, and hiding the radioboxes altogether.

been googling it for hours and could not find a solution for this?

partitioned view performance tuning question


There are 20 tables with the same schema. And a view

create view Everything
select 1 as area, pk_col1, pk_col2, col1, col2, ... from T1
union all 
select 2 as area, pk_col1, pk_col2, col1, col2, ... from T2
union all 
select 3 as area, pk_col1, pk_col2, col1, col2, ... from T3
union all 
select 4 as area, pk_col1, pk_col2, col1, col2, ... from T4
union all 
select 5 as area, pk_col1, pk_col2, col1, col2, ... from T5

However, the foll

Grid View and Datepicker related question, ( in C#) plz help me out


Hi all,

i am new to the IT industry , so i am struggling for few things, i request you all to help me out. I am using c# as my backend.

here is what i need -

1) i need an excel-sheet like gridview whose grid items are textboxes.

2) I need a Date-picker, which when selected, selects the week.

3)This is what is more imp to me- when i select a date, that particular week's dates and days(starting from monday) has to be my gridview's column headers. I am doing this for a timesheet application.

4) my Gridview's first column fields has to be dropdown lists which should populate its listitems from DB.

MVVM Bind View Details to Model Via ViewModel when a Button clicked.


I have model called Car with prperties name,model,type,year.

I have implemeted the Viewmodel with same properties with OnpropertyChangedEvent including model object type Property.

I have a view usercontrol where textboxes for name, model and for year a combobox.

Whenever i fill the view i want to save those details into model via view model

I have written ICommand  Save which calls SaveCarDetails defined in viewmodel,  which is bind to a button in view ,All other texboxes text is bind to the properties of viewmodel properties.

When i put break point at ICommand SaveCommand and SaveCarDetails Function i could see the values filled from view.

But when i bind these details to another user control where listbox is placed and its itemsource property is set to Car property nothing but model object defined in the viewmodel.

I couldn't see the values binding via viewmodel to model.

Where as if i bind to textboxes in the listview i could see the values because i it's a dependency property.

Can any one please tell me what is the wrong i am doing here.




ASP.NetWindows Application  .NET Framework  C#  VB.Net  ADO.Net  
Sql Server  SharePoint  Silverlight  Others  All   

Hall of Fame    Twitter   Terms of Service    Privacy Policy    Contact Us    Archives   Tell A Friend