我希望我的网站有一个用户可以点击的复选框,这样他们每次访问我的网站时都不必登录.我知道我需要在他们的计算机上存储一个cookie来实现它,但该cookie中应包含哪些内容?
此外,是否存在常见错误,需要注意保持此cookie不会出现安全漏洞,这可以避免,同时仍然提供"记住我"功能?
我测试通过C#发送了一些邮件,但我不能告诉特效设置IsBodyHtml到true了.无论价值如何,我在Body中发送的内容都显示内容类型为"text/plain",而我的HTML显示标签以及所有在我的电子邮件客户端(gmail)中.那个标志究竟应该做什么?
注意:我可以通过创建AlternateView内容类型为"text/html" 来发送HTML电子邮件,我只想了解设置正文的工作方式.
我有一个ItemsControl绑定到decimals 列表的数据.我需要添加一个额外的控件ItemsControl(手动指定数字的选项).有没有办法在XAML中执行此操作?我知道我可以在后面的代码中手动添加项目,但我正在尝试更好地理解WPF并且想要查看是否有声明性方法来执行此操作.
请注意,修改我绑定的列表以便它包含额外的按钮(可能通过更改为strings而不是decimals 的列表)不是一个好的选择,因为我想将命令附加到最后一个按钮.
此外,在这之后添加一个额外的按钮ItemsControl也不是一个好选项,因为我的控件使用了一个UniformGrid,我希望我的额外控件在同一个网格中.
这是我的XAML:
<ItemsControl ItemsSource="{Binding PossibleAmounts}">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<UniformGrid Name="ButtonsGrid">
</UniformGrid>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<Button>
<TextBlock Text="{Binding StringFormat='\{0:C\}'}"/>
</Button>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
Run Code Online (Sandbox Code Playgroud)
基本上,我想在UniformGrid中再添一个按钮.
我有一个WPF应用程序,它有一个第三方数据网格,周围有一个边框.我用它DropShadowEffect在边框后面放了一个阴影,但这似乎有点影响了性能(不像a BitmapEffect,但仍然很明显),并使字体渲染模糊.有没有办法以某种方式将效果应用于边框,但不是它的内容?
我尝试将内容的效果设置为{x:Null},但这没有帮助.
这是我想出的一个示例应用程序.它在边框后面加了一个阴影,但它也在每行文本后面留下一个阴影.我想要边框后面的阴影,但不是文字.
<Window x:Class="WpfEffectTest.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Window1" Height="300" Width="300">
<Grid>
<Border BorderBrush="Black" BorderThickness="10" CornerRadius="5" Margin="25">
<Border.Effect>
<DropShadowEffect BlurRadius="10" ShadowDepth="5" />
</Border.Effect>
<StackPanel>
<TextBlock>This is some text</TextBlock>
<TextBlock>This is some text</TextBlock>
<TextBlock>This is some text</TextBlock>
<TextBlock>This is some text</TextBlock>
<TextBlock>This is some text</TextBlock>
<TextBlock>This is some text</TextBlock>
</StackPanel>
</Border>
</Grid>
</Window>
Run Code Online (Sandbox Code Playgroud) 在SQL Server 2005中,我有一个订单详细信息表,其中包含订单ID和产品ID.我想编写一个sql语句,查找包含特定订单中所有项目的所有订单.所以,如果订单5有第1项,第2项和第3项,我会希望所有其他订单也有1,2和3.此外,如果订单5有2次和3次,我希望所有其他订单两个2s和一个3.
我的偏好是它返回完全匹配的订单,但如果更容易/执行得更好,那么作为超集的订单是可以接受的.
我尝试了如下所示的自我加入,但是发现任何项目的订单而不是所有项目.
SELECT * FROM Order O1
JOIN Order O2 ON (O1.ProductId = O2.ProductId)
WHERE O2.OrderId = 5
Run Code Online (Sandbox Code Playgroud)
如果订单5包含两次相同的项目,这也给了我重复.
我有一个IList<T>我需要排序的,如果可能的话我宁愿不复制列表.我注意到ArrayList有一个Adapter静态方法包装传递的列表而不复制它,但这需要一个IList,我有一个IList<T>.从a转换System.Collections.Generic.IList<T>为a System.Collections.IList并且只使用该Adapter方法是否安全?
请注意,这是.Net 2.0,因此LINQ不是一个选项.
我正在使用VS2010调试混合的.Net /本机应用程序,我正在尝试确定是否/何时释放特定的BSTR.基于这个问题:Win32 Api函数的调试中断我已经弄清楚如何在SysFreeString中设置断点,但它被称为A LOT.我想设置一个条件让它只在我感兴趣的特定字符串被释放时中断.
看起来字符串的地址被压入堆栈,但我无法弄清楚如何取消引用堆栈寄存器以确定它是否是我的字符串.我尝试[esp] == 0x001ADCAC在断点条件下放置类似(其中0x001ADCAC是我感兴趣的字符串的地址),但这不起作用.
我有一个使用验证的WPF窗口.我创建了一个错误模板,在一个未通过验证的元素周围放置一个红色边框,并在下面显示错误消息.这工作正常,但错误消息在控件下面的任何控件上呈现,并带有错误.我能说的最好,发生这种情况是因为错误模板在Adorner Layer上呈现,而Adorner Layer位于其他所有层之上.我希望发生的是其他一切都向下移动以便为错误消息腾出空间.有没有办法做到这一点?网络上的所有示例似乎都使用工具提示,并使用一个简单的指标,如星号或感叹号,不占用太多空间.
这是模板:
<ControlTemplate x:Key="ValidationErrorTemplate">
<StackPanel>
<Border BorderBrush="Red" BorderThickness="2" CornerRadius="2">
<AdornedElementPlaceholder x:Name="placeholder"/>
</Border>
<TextBlock Foreground="Red" FontSize="10" Text="{Binding ElementName=placeholder, Path=AdornedElement.(Validation.Errors)[0].ErrorContent, FallbackValue=Error!}"></TextBlock>
</StackPanel>
</ControlTemplate>
Run Code Online (Sandbox Code Playgroud)
以下是使用模板的控件(我输入了一些,所以忽略任何语法错误):
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<TextBox Name="Account" Grid.Row="0" Validation.ErrorTemplate="{StaticResource ValidationErrorTemplate}" Width="200">
<TextBox.Text>
<Binding Path="AccountNumber">
<Binding.ValidationRules>
<validators:RequiredValueValidationRule/>
<validators:NumericValidationRule/>
</Binding.ValidationRules>
</Binding>
</TextBox.Text>
</TextBox>
<TextBox Name="Expiration" Grid.Row="1" Validation.ErrorTemplate="{StaticResource ValidationErrorTemplate}" Width="100" Margin="0,2,5,2">
<TextBox.Text>
<Binding Path="ExpirationDate">
<Binding.ValidationRules>
<validators:ExpirationDateValidationRule/>
</Binding.ValidationRules>
</Binding>
</TextBox.Text>
</TextBox>
</Grid>
Run Code Online (Sandbox Code Playgroud) wpf ×3
.net ×2
xaml ×2
.net-2.0 ×1
border ×1
cookies ×1
data-binding ×1
debugging ×1
email ×1
html-email ×1
remember-me ×1
security ×1
sql ×1
sql-server ×1
winapi ×1