我有一个数据绑定datagridview.在其中我有一个具有NULL值和1-12的列.我如何在运行时使datagridview将1转换为1月并将其显示在单元格中?并将NULL转换为另一个预定义的字符串?
我尝试查看单元格格式,将其更改为自定义,然后输入"MMM"但它不起作用并在实际单元格中显示"MMM".
请帮忙.
编辑:它的winforms c#4.0,该字段绑定到EF中的实体的Int字段.不需要文化敏感,英语很好.
编辑:我尝试{0:MMM}它没有工作,只是在单元格中显示{X:MMM},其中X是int.
一些截图:


我有一个标签控件,有3个对象,2个列表和一个文本框.文本框以两种方式绑定:
<TabControl x:Name="tcTabs" ItemsSource="{Binding Rooms, UpdateSourceTrigger=PropertyChanged}" Margin="5" BorderThickness="1" IsSynchronizedWithCurrentItem="True">
<TabControl.ItemContainerStyle>
<Style TargetType="TabItem">
<Setter Property="Header" Value="{Binding Name}" />
<Setter Property="ContentTemplate">
<Setter.Value>
<DataTemplate>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="22"/>
</Grid.RowDefinitions>
<ListBox ItemsSource="{Binding ReceivedMessages}" DisplayMemberPath="Raw" Grid.Row="0" Grid.Column="0" BorderThickness="0" />
<ListBox ItemsSource="{Binding Users}" DisplayMemberPath="Nick" Visibility="{Binding Type, Converter={StaticResource UserListVisibilityConverter}}" Grid.Row="0" Grid.Column="1" BorderThickness="1,0,0,0" BorderBrush="#FFBBBBBB" Width="130" />
<TextBox Text="{Binding CurrentInput, Mode="TwoWay"}" Grid.Row="1" Grid.ColumnSpan="2" BorderThickness="0,1,0,0" BorderBrush="#FFBBBBBB" Height="22" />
</Grid>
</DataTemplate>
</Setter.Value>
</Setter>
</Style>
</TabControl.ItemContainerStyle>
</TabControl>
Run Code Online (Sandbox Code Playgroud)
支持对象:
public string CurrentInput
{
get …Run Code Online (Sandbox Code Playgroud) 我在我的xaml中定义了一个资源:
<core:WidgetBase xmlns:sdk="http://schemas.microsoft.com/winfx/2006/xaml/presentation/sdk" x:Class="....Silverlight.LiquidityConstraintsView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:core="clr-namespace:...Silverlight;assembly=....Silverlight"
xmlns:local="clr-namespace:....Silverlight"
mc:Ignorable="d">
<core:WidgetBase.Resources>
<SolidColorBrush x:Key="..." />
</core:WidgetBase.Resources>
...
Run Code Online (Sandbox Code Playgroud)
我试图从代码中设置它:
void _administrationClient_GetByFilterModuleSettingCompleted(object sender, GetByFilterModuleSettingCompletedEventArgs e)
{
this.Resources["..."] = new SolidColorBrush(Colors.Red);
}
Run Code Online (Sandbox Code Playgroud)
但我得到错误:
该方法或操作未实现.
堆栈跟踪 :
at System.Windows.ResourceDictionary.set_Item(Object key, Object value)
at ....Silverlight.LiquidityConstraintsView._administrationClient_GetByFilterModuleSettingCompleted(Object sender, GetByFilterModuleSettingCompletedEventArgs e)
at ....Service.AdministrationServiceClient.OnGetByFilterModuleSettingCompleted(Object state)
Run Code Online (Sandbox Code Playgroud)
当我向服务器发送请求以获取颜色时会发生这种情况,然后当它返回时我尝试将该颜色设置为资源,即使我尝试在此时将其设置为红色也会失败.
如果它有帮助,我设置它的方法是从WCF调用到服务器的异步回调方法.
我的离线应用程序中有一个已达到 32mb 的 sqlite 数据库。它是从启动时的资产文件创建的,大小为 6mb。
是否有任何内置的压缩功能会永久导致数据库变小,我不介意阅读时的性能下降。然后它将使用较少的用户手机内存。
有任何想法吗?
DB 有两个表,它们大多是长文本字段。大小是首次应用程序启动时 7000 多次插入的最终结果。
我已将以下工作项目导出为VS模板,该模板使用ASP.NET 5 RC1:
https://github.com/mohasi/vs.spa.template
当我使用它创建一个新项目时,我几乎得不到任何东西:
我究竟做错了什么?
我正在编译一个基本的控制台应用程序:
C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\csc.exe /t:exe /out:myapp.exe Program.cs
Run Code Online (Sandbox Code Playgroud)
首先打印:
Microsoft (R) Visual C# Compiler version 4.6.1038.0
for C# 5
Copyright (C) Microsoft Corporation. All rights reserved.
Run Code Online (Sandbox Code Playgroud)
然后失败,因为我正在使用字符串插值$"{x}".错误是:
error CS1056: Unexpected character '$'
Run Code Online (Sandbox Code Playgroud)
我认为这是因为csc.exe不明白C# 6.如何识别此编译器C# 6?
我需要association在这两个实体(1-*)之间创建一个"虚拟" ,以便我可以遍历它们linq,但问题是我无法触及数据库.我试图手动编辑edmx多次没有成功,得到各种映射错误.

EDMX:
<?xml version="1.0" encoding="utf-8"?>
<edmx:Edmx Version="2.0" xmlns:edmx="http://schemas.microsoft.com/ado/2008/10/edmx">
<!-- EF Runtime content -->
<edmx:Runtime>
<!-- SSDL content -->
<edmx:StorageModels>
<Schema Namespace="DataAccess.SD.Store" Alias="Self" Provider="Devart.Data.Oracle" ProviderManifestToken="ORA" xmlns:store="http://schemas.microsoft.com/ado/2007/12/edm/EntityStoreSchemaGenerator" xmlns="http://schemas.microsoft.com/ado/2009/02/edm/ssdl">
<EntityContainer Name="SDModelsStoreContainer">
<EntitySet Name="CUSTOMER" EntityType="DataAccess.SD.Store.CUSTOMER" store:Type="Tables" Schema="PINNACLE" />
<EntitySet Name="EQUIPMENT" EntityType="DataAccess.SD.Store.EQUIPMENT" store:Type="Tables" Schema="PINNACLE" />
</EntityContainer>
<EntityType Name="CUSTOMER">
<Key>
<PropertyRef Name="CUSTOMEROID" />
</Key>
<Property Name="CUSTOMEROID" Type="int64" Nullable="false" />
<Property Name="CUSTOMER_NAME" Type="VARCHAR2" MaxLength="40" />
<Property Name="CUSTOMER_ACCOUNT" Type="VARCHAR2" MaxLength="20" />
</EntityType>
<EntityType Name="EQUIPMENT">
<Key>
<PropertyRef Name="EQUIPMENTOID" />
</Key>
<Property Name="EQUIPMENTOID" …Run Code Online (Sandbox Code Playgroud) 我有这个问题:
(SELECT OBJECT_ID from cr_object_group_entries_vw where object_group_id IN
(SELECT ITEM FROM TABLE(CR_FN_SPLIT_STRING('28,56',','))))
Run Code Online (Sandbox Code Playgroud)
返回:

但当我这样做时:
SELECT wm_concat(object_id) FROM
(SELECT OBJECT_ID from cr_object_group_entries_vw where object_group_id IN
(SELECT ITEM FROM TABLE(CR_FN_SPLIT_STRING('28,56',','))))
Run Code Online (Sandbox Code Playgroud)
我得到一个空白的结果......我做错了什么?
我有包含大量文本的 TextView,用户搜索某些内容并突出显示匹配项,但是它们可能位于页面下方,有没有办法滚动到第一个匹配项?
我查遍了谷歌,似乎没有找到任何相关的东西。
我的布局:
<ScrollView android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:requiresFadingEdge="vertical"
android:id="@+id/sclView">
<TextView android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/txtView"
android:textSize="16sp"
android:paddingTop="10dp"
android:paddingLeft="20dp"
android:paddingRight="20dp"
android:paddingBottom="10dp"
android:lineSpacingExtra="5dp"
android:textColor="@color/TextGray"
android:textIsSelectable="true"/>
</ScrollView>
Run Code Online (Sandbox Code Playgroud) 什么是从sql server获取日期时间并将其转换为使用友好字符串的最佳方式:
如果超过1天> 1天前.
超过7天> 1周前
1年前
3分钟前
56秒之前.
这可以轻松完成吗?
c# ×3
android ×2
wpf ×2
asp.net-core ×1
asp.net5 ×1
associations ×1
c#-6.0 ×1
colors ×1
compression ×1
csc ×1
data-binding ×1
datagridview ×1
datetime ×1
edmx ×1
formatting ×1
int ×1
oracle ×1
oracle11g ×1
project ×1
resources ×1
roslyn ×1
scroll ×1
scrollview ×1
silverlight ×1
sql ×1
sql-server ×1
sqlite ×1
tabcontrol ×1
templates ×1
textview ×1
winforms ×1
wm-concat ×1