我有一个ListBox,它的ItemTemplate绑定到DataTemplate.我的问题是我无法将模板中的元素拉伸到ListBox的整个宽度.
<ListBox x:Name="listPeople" VerticalAlignment="Stretch" HorizontalAlignment="Stretch"
Margin="0,0,0,0" Background="{x:Null}" SelectionMode="Extended" Grid.Row="1"
ItemTemplate="{StaticResource PersonViewModel.BrowserDataTemplate}"
ItemsSource="{Binding Mode=OneWay, Path=SearchResults}" >
</ListBox>
<DataTemplate x:Key="PersonViewModel.BrowserDataTemplate">
<ListBoxItem HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
<Grid HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="5,5,5,5">
<Border Opacity=".1" x:Name="itemBorder" Background="#FF000000"
HorizontalAlignment="Stretch" VerticalAlignment="Stretch"
CornerRadius="5,5,5,5" MinWidth="100" Height="50"/>
</Grid>
</ListBoxItem>
</DataTemplate>
Run Code Online (Sandbox Code Playgroud)
如您所见,我在网格中添加了一个边框以指示模板的宽度.我的目标是看到此边框扩展到列表框的整个宽度.目前它的宽度由其内容或MinWidth决定,这是目前保持可见的唯一内容.
我从XAML用户控件生成的XPS文档充当模板.我想将XPS文档转换为替代格式,主要是PDF,使用基于.NET的API编程.
做这个的最好方式是什么?
我正在使用Visual Studio中的性能分析工具来评估我正在处理的相当大且复杂的WPF应用程序.我已经能够通过延迟加载以前我刚加载到应用程序上的大多数用户控件来显着降低冷启动时间但是我仍然看到我在程序集中花费的大部分CPU周期'PresentationFramework.ni.dll ".这并没有帮助我弄清楚根本原因是什么,因为它所说的是时间花在特定用户控件的'InitializeComponent'(即XAML解析)或Window.Show(即XAML解析)上.
我的问题是:如何才能更详细地了解哪些特定的XAML元素导致了性能问题?
我正在使用Visual Studio 2013并运行Windows 8.1.我以前使用旧的Windows 7 SDK WPF性能工具包,它显示了一个非常有用的渲染时间显示,当特定的UIElement重新绘制时,它会改变屏幕上的颜色,但我似乎无法找到在Windows 8上运行的相同工具.
我想创建一个类似于乐队附带的星巴克应用程序的应用程序.我想显示条形码.我可以在云端或本地设备上生成条形码作为JPG图像,但我需要能够在乐队的屏幕上显示它们.到目前为止,我还没有找到使用Band Client在应用程序内显示图像的方法.
乐队客户有以下经理:
我能想到的最接近的事情是通知管理器会做到这一点,但唯一的方法是:
这些都不起作用.有任何想法吗?现在我认为SDK从UI的角度来看它的功能相当有限.
我试图调用SharePoint列表服务来获取列表定义和数据.SharePoint网站是我的公司,但我无法控制它.以下是我对服务器安全性的了解:
服务器是HTTPS://登录时服务器接受Windows Active Directory凭据...
我已经尝试过Basic,Digest,CredentialCache,只是NetworkCredential,UnsafeAuthenticatedConnectionSharing,UseDefaultCredentials,PreAuthenticate ......不确定正确的配置是什么......
我收到的错误是HTTP 401 Unauthorized.
Uri url = new Uri(baseAddress + "/_vti_bin/Lists.asmx", UriKind.Absolute);
Lists.Lists client = new Lists.Lists();
// sometimes works
CredentialCache cache = new CredentialCache();
cache.Add(url, "NTLM", new NetworkCredential(context.UserName, context.Password, context.Domain));
client.UseDefaultCredentials = false;
client.Credentials = CredentialCache.DefaultCredentials;
// doesn't work ever
//client.Credentials = new NetworkCredential(context.UserName, context.Password, context.Domain);
//client.PreAuthenticate = true;
client.UnsafeAuthenticatedConnectionSharing = true;
client.Url = url.AbsoluteUri;
listData = client.GetList(listName).OuterXml;
Run Code Online (Sandbox Code Playgroud) 我已经实现了一个自定义媒体格式化程序,当客户端专门请求"csv"格式时它很有用.
我用这段代码测试了我的api控制器:
HttpClient client = new HttpClient();
// Add the Accept header
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("text/csv"));
Run Code Online (Sandbox Code Playgroud)
但是,当我从Web浏览器打开相同的URL时,它返回JSON而不是CSV.这可能是由于标准ASP.NET WebAPI配置将JSON设置为默认媒体格式化程序,除非调用者另有指定.我希望在我拥有的每个其他Web服务上都有此默认行为,但不是在返回CSV的单个操作上.我希望默认的媒体处理程序是我实现的CSV处理程序.如何配置Controller的端点,使其默认返回CSV,并且只有在客户端请求时才返回JSON/XML?
我想确保我知道我的团队是否在我们正在构建的 Windows 10 UWP 应用程序中引入了数据绑定错误。自 WPF 诞生以来,XAML 数据绑定错误就一直默默地失败(无论好坏)。有一些必要的方法可以连接到 .NET 中可用的数据绑定,但这不是我正在寻找的,因为我希望能够使用声明性(基于 XAML 的数据绑定)。我正在寻找一个类似于 App.xaml.cs 中的“UnhandledException”事件的全局钩子,它允许我调用 TelemetryClient.TrackException(...)。
xaml ×3
wpf ×2
.net ×1
asp.net ×1
azure ×1
c# ×1
csv ×1
datatemplate ×1
json ×1
listbox ×1
ntlm ×1
performance ×1
sharepoint ×1
silverlight ×1
uwp ×1
web-services ×1
xps ×1