小编Sam*_*Sam的帖子

prism/mvvm:将列绑定到DataGrid

我正在使用这样的标准.NET DataGrid:

<DataGrid ItemsSource="{Binding Datensaetze}" AutoGenerateColumns="False">
 <DataGrid.Columns>
   <DataGridTextColumn Header="my col 1" Binding="{Binding MyCol1}"/>
   <DataGridTextColumn Header="my col 2" Binding="{Binding MyCol2}"/>
   <DataGridTextColumn Header="my col 3" Binding="{Binding MyCol3}"/>
 </DataGrid.Columns>
</DataGrid>
Run Code Online (Sandbox Code Playgroud)

这很好用.现在我想在ViewModel中定义列,而不是在xaml中设置固定列,我想在运行中生成它们.但是,如果我尝试将列绑定到任何东西,我会收到错误,说

DataGrid.Columns是一个只读属性,无法绑定.

有没有办法动态地将DataGrid列绑定到后面的代码中?

wpf binding datagrid prism mvvm

5
推荐指数
1
解决办法
3821
查看次数

WCF:是否可以在双工通道中使用流模式?

在WCF中,合同可以切换到流模式,以传输大型消息.

在阅读和测试后,在我看来,流模式不能用于双工通道(具有OneWay调用和回调接口的通道).

是这样吗?双工和流媒体不能互相使用吗?或者有办法吗?

(我正在尝试将大文件上传到服务并使用回调来报告此进度)

streaming wcf duplex

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

在WPF应用程序中托管win32窗口?

我有一个遗留的c ++ win32应用程序,并使用wpf windows扩展它确实有效.

但我想要做的是将WPF窗口作为主窗口,而不仅仅是任何旧窗口而是棱镜外壳窗口.

所以对于我的遗留c ++项目,我想添加一个Bootstrapper,shell窗口,MEF加载器,所有的铃声和​​口哨声.在那里,我想放置一些命令,在需要时打开传统的win32窗口.

现在在win32应用程序中打开WPF窗口很简单,我只需要使用

System::Windows::Forms::Integration::ElementHost::EnableModelessKeyboardInterop(mywindow);
Run Code Online (Sandbox Code Playgroud)

但是如何在WPF应用程序中打开win32窗口?win32窗口需要一个消息泵循环,但我在哪里放这个:

MSG  msg;
while (GetMessage(&msg, NULL, NULL, NULL))
{
  TranslateMessage(&msg);
  DispatchMessage(&msg);
}
Run Code Online (Sandbox Code Playgroud)

我可以为循环创建任何新线程吗?或者是否也有这样的互操作助手?

或者我的想法是疯了吗?

c++ wpf winapi interop

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

WP7-ListBox:我应该使用Tap还是SelectionChanged?

我正在使用包含ListBox的PhoneApplicationPage创建一个WP7应用程序.
当用户选择ListBox中的项目时,将打开另一个页面.

现在我有点困惑:我应该使用哪个ListBox事件处理程序来检测选择,Tap或SelectionChanged?如果是Tap,我如何获得轻拍项目?

listbox windows-phone-7

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

WP7如何使用工具包TransitionFrame?

我已经下载了最新的Windows.Phone.Controls.Toolkit并在app.xaml.cs中更改了

RootFrame = new PhoneApplicationFrame();
Run Code Online (Sandbox Code Playgroud)

RootFrame = new TransitionFrame();
Run Code Online (Sandbox Code Playgroud)

我预计页面之间的转换会发生一些变化,但一切都没有发生.

我是否需要做更多的事情来实现更有趣的过渡?

transitions windows-phone-7

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

如何在长时间运行的字宏中禁用屏幕更新?

我有一个单词2013宏,这需要相当长的时间才能完成.

宏正在重新格式化文档,并且屏幕在宏运行时不断更新,我猜这是大部分时间花费的时间.

如何在宏中禁用单词中的屏幕更新并在宏完成时刷新它?

vba ms-word word-vba

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

从ViewComponent返回自定义html

在ASP.NET Core应用程序中,我想从ViewComponent返回自定义html.我可以返回自定义文本,但html将被编码而不是嵌入:

public class BannerViewComponent : ViewComponent
{
  public async Task<IViewComponentResult> InvokeAsync(string param1, int param2)
  {
    return Content("<strong>some custom html</strong>");
  }
}
Run Code Online (Sandbox Code Playgroud)

我在.cshtml页面中使用它:

    @await Component.InvokeAsync("BannerView")
Run Code Online (Sandbox Code Playgroud)

在页面上,这将显示为<strong>some custom html</strong>而不是一些自定义的HTML.
如何从ViewComponent直接返回HTML而不是文本?

c# asp.net-core asp.net-core-viewcomponent

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

Angular routerLinkActive用于多个路径

在我的Angular 5项目中,我有一个引导导航栏菜单。routerLinkActive当路径的开头与菜单的routerlink匹配时,效果很好,例如:

<li [routerLinkActive]="['active']">
  <a [routerLink]="['/entity/teacher']">Teacher</a>
</li>
Run Code Online (Sandbox Code Playgroud)

上面的代码可以很好地激活菜单项“ / entity / teacher / add”等等

问题是,我有一种“包罗万象”的导航项,其中包含不排队的内容:

<li [routerLinkActive]="['active']">
  <a [routerLink]="['/config']">Configuration</a>
</li>
Run Code Online (Sandbox Code Playgroud)

我想这个项目,以突出的路径/tasks/entity/settings也一样,不仅对/config

问题是,我无法更改应用程序的路由。如何获得菜单项以排队其他路由路径以及routerLink中的菜单项?

routing angular2-routing routerlinkactive angular

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

使用LoadLibrary("MyDll.dll")获取加载DLL的路径

我正在使用它的名字加载一个dll,如下所示:

HANDLE hlib = LoadLibrary("Winfax.dll");

现在我想知道dll加载到哪条路径.有没有办法获取DLL句柄的完整路径和文件名?

winapi loadlibrary

3
推荐指数
1
解决办法
2210
查看次数

如何在wpf DataGrid中选择第一行/上一行/下一行/最后一行

我有一个WPF应用程序,其中包含一个显示大量数据的标准DataGrid.

现在我想添加按钮来选择下一个/第一个/上一个/最后一行.

有没有办法让DataGrid为我更改选择?

我试着用

private void SelectNext_Click(object sender, RoutedEventArgs e)
{
  datagrid.MoveFocus(new TraversalRequest(FocusNavigationDirection.Next));
}
Run Code Online (Sandbox Code Playgroud)

但它对我不起作用(不更改所选项目,只将单元格焦点设置为第一个项目).

wpf datagrid

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