- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试构建一个包含编辑对象的 DateTime 值的图形用户界面。 DateTime 属性已绑定(bind)到 DataPicker 和时间的普通 TextBox。当我更改 Time TextBox 中的值时,DateTime 属性中的值是 Today 和输入的时间,而不是仅仅更新时间,保留原始日期。
如何实现只更改 DateTime 时间而不更改日期的时间文本框?
当前绑定(bind):
<TextBlock>Time</TextBlock>
<TextBox Template="{StaticResource RoundedTextBoxTemplate}">
<Binding Path="Delivery.Date" StringFormat="HH:mm">
<Binding.ValidationRules>
<v:IsValidTimeRule />
</Binding.ValidationRules>
</Binding>
</TextBox>
最佳答案
我能想到的唯一方法是拥有一个 DateTime 属性,您只允许 setter 更改时间。
XAML:
<UserControl.Resources>
<mine:DateTimeConverter x:Key="MyDateTimeConverter" />
</UserControl.Resources>
<Grid x:Name="LayoutRoot">
<TextBox x:Name="myTextBox" Text="{Binding Path=TestDateTime, Converter={StaticResource MyDateTimeConverter}, Mode=TwoWay}" />
</Grid>
C# 代码隐藏:
public partial class Page : UserControl
{
private TestClass m_testClass = new TestClass();
public Page()
{
InitializeComponent();
myTextBox.DataContext = m_testClass;
}
}
使用属性 setter 限制的 C# TestClass:
public class TestClass : INotifyPropertyChanged
{
private DateTime m_testDateTime = DateTime.Now;
public DateTime TestDateTime
{
get { return m_testDateTime; }
set
{
m_testDateTime = m_testDateTime.Date.Add(value.TimeOfDay);
PropertyChanged(this, new PropertyChangedEventArgs("TestDateTime"));
}
}
public event PropertyChangedEventHandler PropertyChanged = (t, e) => {};
}
C# IValueConverter:
public class DateTimeConverter : IValueConverter
{
public object Convert(object value,
Type targetType,
object parameter,
CultureInfo culture)
{
DateTime date = (DateTime)value;
return date.ToString("HH:mm");
}
public object ConvertBack(object value,
Type targetType,
object parameter,
CultureInfo culture)
{
string strValue = value.ToString();
DateTime resultDateTime;
if (DateTime.TryParse(strValue, out resultDateTime))
{
return resultDateTime;
}
return value;
}
}
关于c# - 将 DateTime 绑定(bind)到日期和时间 EditFields,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/708843/
我的登录表单中有 2 个 EditFields,名称为 Email: 和 Password:。就在电子邮件下方,我有登录按钮。假设我下来直到登录,我只能回滚到密码字段。光标无法到达电子邮件字段。在模拟
我正在为我的 BlackBerry 项目创建一个搜索框,但看起来 BlackBerry 没有用于创建单行 EditField 的 API。我通过扩展 BasicEditField 和覆盖布局和绘制等方
我试图让 Android 在获得焦点时选择 EditText 字段中的所有文本。我在布局中使用此属性(在两个字段上): android:selectAllOnFocus="true" 我不确定这是否相
所以我有一个相当简单的布局,并且正在进行一些奇怪的交互。 当我在“search_field”EditText 上键入时,输入按预期工作。当我输入 search_field2 字段时,输入随机滞后且缓慢
我正在处理的选项卡有 12 个编辑字段,滚动面板没有显示全部,最后 2 个编辑字段被切掉/截断。它们仅在我单击它们并输入一些内容时才会显示。我可以知道如何解决这个问题吗? 最佳答案 您可以使用Scro
我的应用程序在 Samsung Galaxy S3 上使用 Android 4.0。 我想在 Android 应用程序的 EditText 字段中集成 Emoji 字符支持。谁能建议我,我该如何实现?
我的 BlackBerry 应用程序中有五个 EditField 对象,每个对象只接受一个数字字符。 我想在输入字符时将焦点从第一个 EditField 更改为第二个 EditField。请注意,从一
光标没有出现在 Editfield.. 代码如下.. ef_mob = new EditField("", "", 11, EditField.NO_NEWLINE|EditField.FILTER_
我们有一个编辑字段或文本框,当它被监视时,它会在 LeanFt 的对象识别中心被检测为 Winforms 编辑字段。是否可编辑取决于一些前提条件。根据我们重新创建的前提条件,我们想测试编辑字段是否可编
我正在尝试构建一个包含编辑对象的 DateTime 值的图形用户界面。 DateTime 属性已绑定(bind)到 DataPicker 和时间的普通 TextBox。当我更改 Time TextBo
我是一名优秀的程序员,十分优秀!