小编djc*_*uch的帖子

在构成列表框项目的两个控件之间均匀分割宽度?

我正在尝试设置一个ListBox,以便每个项目都有一个文本块和一个组合框,在列表框的宽度上均匀分割,但我似乎无法找到ColumnDefinition属性的神奇组合来完成它.这是我的列表框项的DataTemplate.无论如何,我已经把它清理干净了.

        <DataTemplate x:Key="MyDataTemplate">
            <Grid>
                <Grid.ColumnDefinitions>
                    <ColumnDefinition/>
                    <ColumnDefinition/>
                </Grid.ColumnDefinitions>
                <TextBlock Grid.Column="0" Text="{Binding XPath=text()}"/>
                <ComboBox Grid.Column="1" SelectedIndex="0" ItemsSource="{Binding Source={StaticResource Names}, XPath=Name}"></ComboBox>
            </Grid>
        </DataTemplate>
Run Code Online (Sandbox Code Playgroud)

我已经在窗口上测试了一个带网格的简单应用程序.简单地指定两个ColumnDefinitions会使它们自动占据宽度的一半,这很好,但是当在listboxitem datatemplate中执行相同操作时,行为是不同的.

我如何更改datatemplate以使其工作?

谢谢!

c# wpf listbox datatemplate listboxitem

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

获取被单击的菜单项的文本?

我有一个绑定到字符串列表的上下文菜单,以便每个菜单项的文本都是字符串列表的元素。每个菜单项都设置为相同的事件处理程序。我想做的是找出调用事件处理程序时单击了哪个菜单项。

我认为这会很简单,但我有点困惑。

如果我查看监视窗口,会发现有一个名为 FocusedItem 的菜单项属性。它包含我需要的信息,但是当我尝试使用它时,它似乎不是类的一部分,并且代码甚至无法编译,我觉得很奇怪。

有人能指出我正确的方向吗?

我遇到问题的 xaml 和代码:

<MenuItem Header="Add Object"  ItemsSource="{Binding ObjectClassList}" Click="AddObject_Click"/>

    private void AddObject_Click(object sender, RoutedEventArgs e)
    {
        MenuItem menuItem = sender as MenuItem;

        if (menuItem == null)
        {
            return;
        }

        // menuItem.FocusedItem // ?? does not compile


    }
Run Code Online (Sandbox Code Playgroud)

谢谢!

c# wpf menuitem

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

向Objective C类接口添加方法是可选的吗?

来自C++背景,让我对Objective C感到困惑的一件事是你可以在类中添加一个方法而不在类接口中实际指定它.所以我有一连串的问题:

  1. 为什么有人会选择不在类接口中添加方法?
  2. 这仅仅是因为能见度?
  3. 界面中没有声明的方法是私有的吗?
  4. 声明类接口中的方法只是可选的吗?
  5. 覆盖基类的方法有什么不同吗?

iphone macos cocoa cocoa-touch objective-c

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

确定iOS设备上可能同时触摸的最大数量?

有没有办法找出同时触摸的最大数目的iOS设备(iPhone,iPod Touch的,iPad的)吗?我已经在这里和那里iPhone可以处理5而iPad可以处理11中读出,但我还没有找到正式的方式(通过函数调用,说)证实了这一点.

iphone ipod-touch ipad ios

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

使用静态C++ lib的Windows 8 WinRT应用程序具有vccorlibd的多重定义符号

我有一个Windows 8的WinRT应用程序,它包含几个C++静态库和一个WinRT本机静态C++库.它没有链接,因为它抱怨与线程模型库相关的多重定义符号:

vccorlibd.lib(tmmta.obj) : error LNK2005: "int __abi___threading_model" (?__abi___threading_model@@3HA) already defined in vccorlibd.lib(tmdefault.obj)
fatal error LNK1169: one or more multiply defined symbols found
Run Code Online (Sandbox Code Playgroud)

请注意,它正在尝试使用默认的踩踏模型lib(tmdefault)链接MTA线程模型lib(tmmta).

我无法在项目属性中找到任何设置来更改此设置.我发现最接近的是CLR线程属性,但更改此设置无效.我不知道我的解决方案中的哪个子项目正在使用哪个线程模型.

如何以及在何处可以查看和更改线程模型设置?

谢谢!

multithreading windows-8 windows-runtime c++-cx

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

如何编写可以取消主事件的"预览"类型事件?

假设我有一个活动.我们称之为DoStuff.在DoStuff发生之前,我正在尝试使用另一个事件PreviewDoStuff来检查是否需要阻止调用DoStuff.我面临的问题是我无法从PreviewDoStuff中获得任何价值,如返回代码或由于事件的编写方式.并且事件args不会传递回调用者,因此我无法获得事件args"处理"属性.我确信必须有办法,但我不知道如何做.有任何想法吗?

谢谢!

c# events event-handling

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

具有当前项目的可观察集合?

在我的应用程序的对话框中,我有一个绑定到选项卡列表的可观察集合(存储在其他地方)。当我关闭并重新打开对话框时,当前选定的选项卡会丢失并最终成为第一个选项卡。如何设置选项卡以便保留所选选项卡?

我的印象是可观察集合具有“当前项目”属性,但事实似乎并非如此。我查看了 ItemCollection 和 CollectionView,它们确实具有当前项目属性,但我不确定这是否是我感兴趣的。

c# wpf observablecollection

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

在没有任何用户控制或交互的情况下在iPhone上播放全屏视频?

我正在开发一款带有介绍视频的iOS游戏.如何在没有以下情况下全屏播放视频:

1)用户控制如播放/暂停可见

2)触摸如双击还是捏改变视频的缩放/缩放?

要禁用视频上的点按,我可以在电影播放器​​视图中添加空白的UIView吗?我该怎么办?

video objective-c uiview ios

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

如何将WinRT异步任务集成到现有的同步库中?

我们有一个长期建立的大型多平台代码库,目前正在移植到WinRT.我们面临的挑战之一是如何处理WinRT的异步风格.

例如,我们不确定如何处理WinRT的异步文件操作.不出所料,我们的代码库的API是同步的.一个典型的例子是我们的File :: Open函数,它试图打开一个文件并返回成功或失败.我们如何调用WinRT函数并保持函数的行为相同?

请注意,我们遗憾地受到遗留的限制:我们不能简单地将API更改为异步.

谢谢!

windows asynchronous windows-8 windows-runtime

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

等待任务抛出

我刚刚开始使用WinRT的并发模型.我有一个需要等待的任务,但是调用wait()会抛出一个我无法捕获的异常.

最简单的代码:

concurrency::task<StorageFile^> getFileTask = concurrency::create_task(Windows::Storage::ApplicationData::Current->LocalFolder->GetFileAsync(fileString));
getFileTask.wait();
Run Code Online (Sandbox Code Playgroud)

抛出的例外是:

Microsoft C++ exception: Concurrency::invalid_operation at memory location 0x0402C45C
Run Code Online (Sandbox Code Playgroud)

如何设置它以使其有效?

windows windows-8 windows-runtime

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

DX11交换链仅显示第一帧.在它和黑色图像之间翻转

当我运行我的3D场景时,它只渲染第一帧然后在它和黑屏之间翻转,导致大量闪烁.我认为这是我的交换链没有正确设置,但我真的不知道.

这是我的代码来设置它.它几乎是从微软的例子中复制而来的.

DXGI_SWAP_CHAIN_DESC1 sd = {0};
sd.Width = 0;                           
sd.Height = 0;
sd.Format = DXGI_FORMAT_R8G8B8A8_UNORM; 
sd.Stereo = false; 
sd.SampleDesc.Count = 1;                
sd.SampleDesc.Quality = 0;
sd.BufferUsage = DXGI_USAGE_RENDER_TARGET_OUTPUT;
sd.BufferCount = 2;                     
sd.Scaling = DXGI_SCALING_NONE;
sd.SwapEffect = DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL;
sd.Flags = 0;

CoreWindow^ window =  reinterpret_cast<CoreWindow^>(mSystem->GetIWindow());
hr = pIDXGIFactory->CreateSwapChainForCoreWindow(mD3DDevice,  reinterpret_cast<IUnknown*>(window), &sd, NULL, &mSwapChain);
EA_ASSERT(SUCCEEDED( hr ));
Run Code Online (Sandbox Code Playgroud)

而目前的代码:

DXGI_PRESENT_PARAMETERS  presentParameters = {0};
HRESULT hr = mSwapChain->Present1(0, 0, &presentParameters);
Run Code Online (Sandbox Code Playgroud)

在我看来相当直接,所以我不明白为什么它不起作用.

场景一直在运行.更新功能每帧都运行一次.

另外,如果我在PIX中检查渲染,一切都很好.我得到了我期望渲染的东西.它只是没有出现在屏幕上.

有任何想法吗?谢谢!

windows directx directx-11 windows-8

0
推荐指数
1
解决办法
771
查看次数