标签: viewmodel

使子窗口始终位于所有窗口的顶部

我正在用wpf写作.在我的viewModel中,我有一个打开新窗口的命令.但是,有时这个子窗口位于父窗口下.(例如,如果我在我的应用程序中工作,那么打开浏览器并希望返回我的应用程序).窗口打开如下:

MyViewModel vm = new MyViewModel(oper);
Mywindow window = new MyWindow();
//Initialize viewModel and set window.DataContext to this viewModel
CWPFWindowWithViewModelHelper<IWindowWithViewModel>.InitializeViewModel(window, vm);
window.ShowDialog();
Run Code Online (Sandbox Code Playgroud)

我希望这个子窗口在打开时始终可见.我怎样才能做到这一点?

wpf window viewmodel

2
推荐指数
2
解决办法
1万
查看次数

绑定到IsolatedStorage中的图像

是否可以将数据绑定到隔离存储中的映像而无需代码或转换器?

silverlight viewmodel windows-phone-7

2
推荐指数
1
解决办法
287
查看次数

ASP.NET MVC强类型ViewModel - 组合创建/列表视图

通过创建一个简单的Bug/Feature跟踪系统,我正在学习ASP.NET MVC和Entity Framework Code First,LINQ.我想通过让用户提交上面的表单并将提交的内容显示在下面来模仿Twitter界面.我不确定如何构建强类型视图和所述模型.我想将我的创建和索引视图合并到一个视图中,问题是创建采用单一类型Entry(Pylon.Models.Entry),而索引采用入口(IEnumerable<Pylon.Models.Entry>)的IEnumerable .下面是我的viewmodel类和Display视图.我只是从"创建"和"索引"视图中复制了脚手架生成的代码,显然混合不同的模型会导致运行时错误,从而导致视图被破坏.我的问题是如何重组视图.

// Entry ViewModel
public class EntryViewModel
{
    public Entry Entry { get; set; }
    public IEnumerable<Entry> Entries { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
@* Display View *@

@model ?

@{
    ViewBag.Title = "Display";
}

<hr />

@using (Html.BeginForm())
{
    @Html.ValidationSummary(true)
    <fieldset>
        <legend>Entry</legend>

        <div class="editor-label">
            @Html.LabelFor(model => model.Description)
        </div>
        <div class="editor-field">
            @Html.EditorFor(model => model.Description)
            @Html.ValidationMessageFor(model => model.Description)
        </div>

        <div class="editor-label">
            @Html.LabelFor(model => model.OpenDate)
        </div>
        <div class="editor-field">
            @Html.EditorFor(model => model.OpenDate)
            @Html.ValidationMessageFor(model => model.OpenDate) …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc viewmodel razor

2
推荐指数
1
解决办法
8306
查看次数

何时使用ViewModel,何时不在Asp.net MVC中

AFAIK,有两种方法可以将数据从控制器传递到视图:一种是松散类型(使用ViewBag或ViewData),另一种是强类型.由于强大的编译时检查,大多数人推荐后者.

在动态Web应用程序中,当需要将多个实体从控制器传递到视图时,我们遇到了各种情况.在这种情况下,可以将单个实体作为模型传递并放在ViewBag字典中.或者,可以创建一个全新的ViewModel类,合并各种实体,然后将其传递给视图.

最近,我遇到了这样的问题; 我需要传递一个类别模型,其中包含子类别列表和作为属性注册的产品.然后在视图中,我需要显示子类别,同时确保在产品集合中出现分页(如果它们大于10).因此,我无法对类别模型或产品模型使用强类型视图.

该解决方案由后续的同行,呈现tvanfossonUfukHacıoğulları(非常感谢两者)在这个帖子.那就是使用ViewModel.我仍然试图理解并研究它,它似乎是正确的解决方案.

问题:这是处理此类情况的更好方法吗?此外,何时建议使用ViewModel以及何时绕过它以支持ViewBag和模型.

viewmodel asp.net-mvc-3

2
推荐指数
1
解决办法
238
查看次数

MVC3 - 帖子上的模型字段为空(使用viewmodel)

在MVC3应用程序中,我有一个具有奇怪行为的实体:"创建"操作正常,但"编辑"操作失败:在提交时,我获取所有字段为空的模型.

我搜索了关于这个错误的建议,似乎ViewModel可能是原因,但我看不出我的任何问题.正如我之前所说,创作工作正常!

请帮帮忙,谢谢!

模型:

    public partial class tblEmployeur
{
    [Required(ErrorMessageResourceType = typeof(EmployeurResources), ErrorMessageResourceName = "RequiredUserIDMessage")]
    [Display(ResourceType = typeof(EmployeurResources), Name = "UserIDDisplay")]
    public System.Guid userID { get; set; }

    [Required(ErrorMessageResourceType = typeof(EmployeurResources), ErrorMessageResourceName = "RequiredNomMessage")]
    [Display(ResourceType = typeof(EmployeurResources), Name = "NomDisplay")]
    public string nom { get; set; }

    [Required(ErrorMessageResourceType = typeof(EmployeurResources), ErrorMessageResourceName = "RequiredTypeSocMessage")]
    [Display(ResourceType = typeof(EmployeurResources), Name = "TypeSocDisplay")]
    public string type_soc { get; set; }

    [Required(ErrorMessageResourceType = typeof(EmployeurResources), ErrorMessageResourceName = "RequiredCodeRCMessage")]
    [Display(ResourceType = typeof(EmployeurResources), Name = "CodeRCDisplay")]
    public string …
Run Code Online (Sandbox Code Playgroud)

post viewmodel asp.net-mvc-3

2
推荐指数
1
解决办法
7128
查看次数

模型在Post上的MVC3中没有保留价值

我正在使用viewmodel(vm)创建一个新的葡萄酒.我根据用户的配置文件将ProducerID值分配给get上的vm.在视图中呈现时,我可以在视图中看到ProducerID值.除非用户处于管理员角色(我没有使用该角色进行测试),否则用户无法选择或编辑此值.我的问题是ProducerID总是在POST上返回0.我不知道我错过了什么,因为我在视图中的其他选定选项回来了.

我试图在vm本身中添加一个新的唯一名称,但这也没有值.我环顾四周,找到了其他一些有类似问题的人,但他们的解决方案都没有帮助.对此的任何帮助都会很棒.谢谢!

视图模型:

{
    public Wine Wine { get; set; }
    public VOAVIRequest VOAVIRequest { get; set; }
    public bool IsRequest { get; set; }

    public SelectList VarTypes { get; set; }
    public SelectList Origins { get; set; }
    public SelectList Apps { get; set; }
    public SelectList Vintages { get; set; }
    public SelectList Importers { get; set; }

    public NewWineViewModel()
    {
        this.Wine = new Wine();
    }
}
Run Code Online (Sandbox Code Playgroud)

葡萄酒型号:

public class Wine :Updater
{
    public int WineID { get; …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc viewmodel asp.net-mvc-3

2
推荐指数
1
解决办法
1885
查看次数

如何将列表添加到View Model MVC

我正在使用MVC 3和View Model,在我的例子中我有一个View Model,它应该显示一个项目列表,还有一个用于插入一些输入的表单.

我的视图中存在问题,因为我无法将表格与视图模型相关联,您能告诉我我做错了什么吗?

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.ComponentModel.DataAnnotations;
using TestGuestBook.Models;

namespace TestGuestBook.ViewModel
{
    public class ListAddCommentsViewModel
    {
        public int CommentId { get; set; }

        [Required]
        public string Nominative { get; set; }

        [Email]
        public string Email { get; set; }

        [Required]
        public string Content { get; set; }

        public List<Comment> CommentItems { get; set; }
    }
}
Run Code Online (Sandbox Code Playgroud)

视图

@model IEnumerable<TestGuestBook.ViewModel.ListAddCommentsViewModel>

@{
    ViewBag.Title = "Index";
}

<h2>Index</h2>

@using (Html.BeginForm()) {
    @Html.ValidationSummary(true)
    <fieldset>
        <legend>ListAddCommentsViewModel</legend>

        <div …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc viewmodel c#-4.0

2
推荐指数
1
解决办法
4万
查看次数

ASP MVC3视图模型在回发时将数据从集合对象丢失到编辑方法

我的ASP MVC3视图模型在Edit方法加载此特定页面时工作正常,但是当用户点击保存并进行回发时,两个集合对象(List<T>)中包含的所有信息都将丢失.有任何想法吗?

这是视图中的代码.这会正确加载所有代理信息(ID和状态代码)

    @for (int i = 0; i < Model.Fixed.Count; i++)
    {           

        if(!String.IsNullOrWhiteSpace(Model.Fixed[i].AgentId))
        {
           fixedRow++;

           if (fixedRow > 2)
           {
               var rowId = "row" + fixedRow.ToString() + "F";
               <tr id=rowId class="noSee">
                    <td>
                        @Html.DropDownListFor(model => model.Fixed[i].StateCode,
                         (SelectList)ViewBag.StateCodeList, Model.Fixed[i].StateCode)
                    </td>
                    <td>
                        @Html.EditorFor(model => model.Fixed[i].AgentId)
                        @Html.ValidationMessageFor(model => model.Fixed[i].AgentId)
                    </td>
                    @if(fixedRow > 1)
                    {
                        var send = "MoreFixed(" + (fixedRow + 1).ToString() + ");";
                        var dataId = "plus" + fixedRow.ToString() + "F;";
                        <td id=@dataId  class="more" onclick=@send>+</td>
                    }
               </tr> 
           }
           else
           { …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc postback viewmodel asp.net-mvc-3 asp.net-mvc-2

2
推荐指数
1
解决办法
3838
查看次数

错误:此PlotModel已被其他一些PlotView控件使用

我有两个选项卡绑定到一个选项卡,viewmodel其中包含一个PlotModelof oxyplot和通过a选择的视图模型DataTemplate。单击第一个选项卡时,viewmodel绑定正确,但切换到标题抛出异常中定义的异常上方的第二个选项卡时。在两个选项卡中,所有控件均相同。是否可以将一个对象绑定到两个控件?

wpf xaml mvvm viewmodel oxyplot

2
推荐指数
1
解决办法
1644
查看次数

uwp - 布尔到可见性转换器不起作用

我不明白为什么这么简单的事情会让我这么麻烦,但仍然如此.我有这个转换器:

public class BoolToVisibleConverter : IValueConverter
{
    public object Convert(object value, Type targetType, object parameter, string language)
    {
        if (value is bool && (bool)value)
            return Visibility.Visible;
        return Visibility.Collapsed;
    }

    public object ConvertBack(object value, Type targetType, object parameter, string language)
    {
        return (value is Visibility && (Visibility)value == Visibility.Visible);
    }
}
Run Code Online (Sandbox Code Playgroud)

这个视图模型:

 public class LoginViewModel: INotifyPropertyChanged
{
private bool isHowToVisibile;

    public bool IsHowToVisible
    {
        get { return isHowToVisibile; }
        set { isHowToVisibile = value; Notify(nameof(IsHowToVisible)); }
    }

 public event PropertyChangedEventHandler PropertyChanged; …
Run Code Online (Sandbox Code Playgroud)

converter mvvm viewmodel uwp uwp-xaml

2
推荐指数
1
解决办法
560
查看次数