小编Mar*_*hal的帖子

如何在Crystal Reports中禁止CrossTab行标题

我在crytal报告中创建了一个交叉表,其中需要禁止交叉表的行标题,

我试图压制Row-Header对象,但通过这样做,我仍然看到空的Row-Header单元格.

编辑:

例如,我有列:打开和关闭以及行作为某个月的日期,所以它看起来像在交叉表中

               Opening      Closing
01/10/2010      500           600
02/10/2010      600           700
03/10/2010      700           800
Run Code Online (Sandbox Code Playgroud)

等等等等.我的目的是只显示没有日期的数据(这是行标题),而没有标题打开和关闭,这是列标题.

有没有办法在CrossTab中完全抑制行标题?

提前致谢 ..

c# crystal-reports

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

将转义字符发送到打印机

我正在开发一个C#应用程序,用于从SATO(CG408 TT)的热转印打印机打印标签

为此我使用SBPL(SATO的编程语言).看起来如下:

<ESC>A
<ESC>H0050<ESC>V0100<ESC>L0303<ESC>XMSATO
<ESC>H0050<ESC>V0200<ESC>B103100*SATO*
<ESC>H0070<ESC>V0310<ESC>L0101<ESC>XUSATO
<ESC>Q1<ESC>Z
Run Code Online (Sandbox Code Playgroud)

为了与打印机通信并向其发送原始数据,我遵循这种技术.起初我正在尝试使用StringBuilder类构建转义序列.

StringBuilder sb = new StringBuilder();
              sb.AppendLine();
              sb.AppendLine("<ESC>A");
              sb.AppendLine("H0050<ESC>V0100<ESC>L0303<ESC>XMSATO");
Run Code Online (Sandbox Code Playgroud)

等等....

但是如何<ESC>在字符串构建器参数中替换part.我知道字符27,但接下来如何使用AppendLine Command

提前致谢.

.net c# printing string thermal-printer

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

通用委托类型声明语法

非泛型委托声明如下:

delegate void Print(int arg);
Run Code Online (Sandbox Code Playgroud)

where void返回类型,int参数类型.

通用委托声明如下:

delegate void Print<T> (T arg);
Run Code Online (Sandbox Code Playgroud)

这里void又是返回类型,T括号中是通用的参数类型.

现在我们已经知道了返回类型和参数类型,那么为什么我们需要额外的类型角度括号Print<T>?它意味着什么?

谢谢大家.

.net c# delegates

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

django-tables2:在渲染方法中使用请求用户

我正在使用 djnago-tables2 来显示我的事件模型中的数据。我需要将当前请求的用户放入表的render方法中(进一步调用一个模型函数来获取当前用户的响应)。

我怎样才能做到这一点?

我的模特

class Event(models.Model):

    name=models.CharField(max_length=254)
    start=models.DateTimeField()
    end=models.DateTimeField()
    invited_user=models.ManyToManyField(User,blank=True)

    def getResponseFromUser(self, user):
        try:
            return Response.objects.filter(event=self, user=user).order_by('-pk')[0]
        except Exception:
            return None

class Response(models.Model):
    user=models.ForeignKey(User)
    event=models.ForeignKey(Event)
    timestamp=models.DateTimeField(auto_now_add=True)

    SEEN=0
    YES=1
    PROBABLY_YES=2
    PROBABLY_NO=3
    NO=4

    RESPONSE=(
        (SEEN, _('seen but undecided')),
        (YES, _('Yes')),
        (PROBABLY_YES, _('probably yes')),
        (PROBABLY_NO, _('probably no')),
        (NO, _('No')),
    )
    response=models.IntegerField( choices=RESPONSE, default=SEEN)

    @property
    def getResponseText(self):
        return self.RESPONSE[self.response][1]
Run Code Online (Sandbox Code Playgroud)

桌子

class EventTable(tables.Table):

    requestUser=None # to be set from request (externally)

    eventResponse = tables.Column(empty_values=(), verbose_name="Response", orderable=False)

    class Meta:
        model = Event
        # add class="paleblue" …
Run Code Online (Sandbox Code Playgroud)

django django-models django-tables2

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

使用Telerik组件正确部署应用程序

我有以下项目结构:

  • 类库
    • 参考Telerik控件
  • 主机申请
    • 参考类库

类库中有几个用户控件,其中包含telerik组件。我有一个宿主应用程序,该应用程序承载了类库中的这些用户控件。

现在的问题是,尽管引用了库中的telerik dll,但我仍然必须在主机应用程序中引用telerik dll。否则它将XamlParseException在运行时抛出。虽然它编译没有错误。

PresentationFramework.dll中发生类型为'System.Windows.Markup.XamlParseException'的第一次机会异常

附加信息:无法加载文件或程序集'Telerik.Windows.Controls.GridView,PublicKeyToken = 5803cfa389c90ce7'或其依赖项之一。该系统找不到指定的文件。

为什么会这样呢?为什么需要复制dll。

我正在使用带有版本的Telerik dll 2015.2.623.45


重现此问题: 我们可以只使用一个用户控件创建一个库

<UserControl>
       <Grid>
          <telerik:RadGridView></telerik:RadGridView>  
       </Grid>
 </UserControl>
Run Code Online (Sandbox Code Playgroud)

然后创建另一个引用该类库的项目

<Window>
    <Grid>
        <wpfApplication1:UserControl1/>
    </Grid>
</Window>
Run Code Online (Sandbox Code Playgroud)

并尝试运行它。

(为简便起见,我省略了xmlns定义)

.net c# wpf telerik

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

如何在C#MVVM中绑定一对多关系

我一直在开发Windows Forms应用程序,并且是使用MVVMLight Toolkit和WPF的新手.

我的模型如下:

患者

Id,FirstName,LastName等...

测试结果

Id,分数,日期,
PatientId等...

每位患者可以有多个TestResults.在同一个视图(名为GTPView)上,我想显示一个患者列表框和一个TestResults列表框.当用户点击患者时,所有患者的TestResults都应出现在TestResults列表框中.

我知道如何将Patient ListBox的SelectedItem绑定到来自我的GTPViewModel的Patient属性,但是如何将TestResults ListBox绑定到当前所选患者的所有TestResults?

我是否应该拥有TestResults列表框的UserControl视图和患者列表框的UserControl视图,然后将这些UserControl添加到我的GTPView?或者最好只在一个视图上完成所有操作?

提前致谢.如果您需要更多信息,请与我们联系.这是我的GTPView的XAML:

<Window x:Class="ApuntaNotas.Views.GTPView"            
        Title="GTP"            
        DataContext="{Binding GTP, Source={StaticResource Locator}}"
        d:DataContext="{d:DesignData /SampleData/PatientsViewModelSampleData.xaml}">
    <Window.Resources>
        <CollectionViewSource Source="{Binding Patients}" x:Key="PatientsVS">
            <CollectionViewSource.SortDescriptions>
                <ComponentModel:SortDescription PropertyName="Name" />
            </CollectionViewSource.SortDescriptions>
        </CollectionViewSource>
    </Window.Resources>
    <DockPanel>
        <ListBox DockPanel.Dock="Left" ItemsSource="{Binding Source={StaticResource PatientsVS}}"
                 x:Name="listBoxPatients" SelectedItem="{Binding SelectedPatient}" DataContext="{Binding}"
                 DisplayMemberPath="">
        </ListBox>
        <ListBox DockPanel.Dock="Right" ItemsSource="{Binding Source={StaticResource PatientsVS}}"
                 x:Name="listBoxTestResults"  DataContext="{Binding}"
                 DisplayMemberPath="">
        </ListBox>

    </DockPanel>
</Window>
Run Code Online (Sandbox Code Playgroud)

c# wpf xaml mvvm

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

float.Parse返回不正确的值

string X有价值2.26

当我使用float.Parse(X)..it 解析它时2.2599999904632568.为什么这样?以及如何克服这一点?

但如果相反我使用double.Parse(X)它返回确切的值,即2.26.

编辑:代码

float.Parse(dgvItemSelection[Quantity.Index, e.RowIndex].Value.ToString());
Run Code Online (Sandbox Code Playgroud)

感谢帮助

.net c# floating-point parsing

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

使用Image.FromStream返回图像

我知道也有类似的帖子,但是我的问题没有任何答案,因此发布了此帖子。

我有一个从图像路径检索并返回图像的方法。以下是我使用的代码段。在某些情况下,这会失败,因为返回后图像会丢失。

public static Image GetImageFromPicPath(string strUrl)
{
    WebResponse wrFileResponse;
    wrFileResponse = WebRequest.Create(strUrl).GetResponse();
    using (Stream objWebStream = wrFileResponse.GetResponseStream())
    {
        return Image.FromStream(objWebStream);
    }
}
Run Code Online (Sandbox Code Playgroud)

如果我使用Bitmap类并返回图像,则元数据会丢失。

如果我使用MemoryStream(如下所示)并且不处置MemoryStream,那么它将起作用。但是这里可能存在内存泄漏。如果使用using块,图像将丢失。

MemoryStream ms = new MemoryStream();
objWebStream.CopyTo(ms, 8192);
return System.Drawing.Image.FromStream(ms); 
Run Code Online (Sandbox Code Playgroud)

有人可以建议我解决此问题的最佳方法。

提前致谢!!

.net c#

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

Scrollviewer&Canvas

我试图在画布中加载图像,这样,如果图像的大小溢出画布,滚动条应该被激活(MS Paint样式)

<Window>
   <ScrollViewer>
        <Canvas  ScrollViewer.HorizontalScrollBarVisibility="Visible" 
                 ScrollViewer.VerticalScrollBarVisibility="Visible">
            <Image Source="SampleImage.jpg" />
        </Canvas>
   </ScrollViewer>
 </Window>
Run Code Online (Sandbox Code Playgroud)
  • 现在,当Canvas拉伸到Window大小时,滚动条将不会显示为Canvas实际上没有溢出Window.
  • 其次,因为它ImageCanvas它大得多,它会被限制在其范围内Canvas,所以ScrollViewer不要认为它的内容:Canvas实际上是溢出的.

StackPanel也会发生很多时间,即使绑定数据有几十行,但滚动条仍然没有被激活.有时滚动查看器对我来说似乎很神秘.

那么,在使用ScrollViewer控件时应该记住的基本逻辑应该是什么.

谢谢.

编辑:刚刚编辑了问题标题,因此无论是否有画布问题都可以在搜索中轻松获得此问题.

wpf xaml scrollviewer

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

播放声音直到dialogbox.dialogresult == dialogresult.OK

我正在开发一个winform应用程序.我想播放一个声音文件,直到对话框的消息框正常.我怎样才能做到这一点.

例如

 /*Till*/ (MessageBox.Show("Alarm") == DialogResult.OK)

 //Play a sound file
Run Code Online (Sandbox Code Playgroud)

我一边试着一边做,但没有成功.我是否需要使用后台工作程序或在单独的线程中运行代码?

c# dialog messagebox winforms

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

C#:For循环解释

我有一个关于C#循环的问题.

我的代码:

 for(i = 1; i < 100; i*=2) 
 {
    Console.Write(i + " ");
 }
 Console.Readkey(); 
Run Code Online (Sandbox Code Playgroud)

我认为结果应该是"2 4 8 16 32 64",但我得到的是"1 2 4 8 16 32 64"."1"来自哪里?

c# oop for-loop

-4
推荐指数
1
解决办法
371
查看次数