作者: zantesu
查看: 7795|回复: 9
打印 上一主题 下一主题

使用Cskin中遇到的一些问题...

[复制链接]
跳转到指定楼层
楼主
zantesu 发表于 2015-1-8 21:57:29 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
查看: 7795|回复: 9
本帖最后由 zantesu 于 2015-1-9 16:55 编辑

  • 遇到内嵌Webbrowser并需要页面回调方法的时候, 即便是已经声明了[ComVisible(true)], 但继承的CCSkinMain似乎没有这个声明, 于是回调就会失效或报错, 对于大量依赖Webbrowser的界面, 不得不只能使用基本的Form
  • SkinChatList强制要求显示昵称, 就是括号里的那部分, 即便是手动设置昵称为空, 但括号并不会消失, 仍然显示一个空括号
  • CSkin依赖System.Design, 这样使用CSkin的工程不得不依赖.Net Framework Full而不是精简后的Client Profile, 这样不得不给用户也去安装一堆服务器才用到的运行库比如System.Web等等
  • ChatListBox在某些操作下偶尔会出现显示崩溃, 即界面上内容消失, 只显示巨大的红叉
  • ChatListBox分组后总是带有一个类似(8/8)的提示不知如何隐藏
  • SkinTextBox中的SkinText总是强制多行模式, 而不是单行文本框
所使用的CSkin.dll已是最新版(14.8.26.1)以上是平时遇到的较严重的几个问题, 急盼解决办法, 谢谢!

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 转播转播
回复 论坛版权

使用道具 举报

沙发
乔克斯 发表于 2015-1-15 23:24:26 | 只看该作者
1.页面回调,怎么会报错?。好像没做什么对Webbrowser的限制啊。
2.ChatListBox作为好友列表,那个是不能为空的,备注名可以为空,昵称不行。
3.CSkin不支持精简版Client。
4.ChatListBox内存占用问题,新版本已经修复,请继续关注论坛,期待新版发布吧。
5.(8/8)是写死绘制进去的。。没有属性和手段隐藏,除非改动源代码。
6.SkinTextbox达到一定高度的时候,会自动转换成多行,等于一定高度会自动变成单行。原生的单行模式可以拉伸高度?只能改变FontSize改变单行高度吧。
板凳
 楼主| zantesu 发表于 2015-1-19 09:15:22 | 只看该作者
关于SkinTextBox的问题, 经验证, 发现高度在28时内置SkinText自动单行模式, 高于此高度就强制为多行模式了
但无法通过更改字体大小的方式来使SkinTextBox的高度增加, 如图, 字体设置大了之后SkinText的高度溢出, 但外层SkinTextBox的高度适中不会变化, 一旦手动修改高度, SkinText又会强制进入多行...
因此现状是似乎没有任何办法来保持单行模式同时又修改SkinTextBox的高度?

地板
乔克斯 发表于 2015-1-19 13:12:36 | 只看该作者
zantesu 发表于 2015-1-19 09:15
关于SkinTextBox的问题, 经验证, 发现高度在28时内置SkinText自动单行模式, 高于此高度就强制为多行模式了
...

SkinTextbox实际上是panel嵌套textbox。。你可以- -自己弄个panel嵌套。这样一切都可以掌控之中了。
5#
 楼主| zantesu 发表于 2015-1-19 15:45:43 | 只看该作者
乔克斯 发表于 2015-1-19 13:12
SkinTextbox实际上是panel嵌套textbox。。你可以- -自己弄个panel嵌套。这样一切都可以掌控之中了。 ...

已经在这么做了....

另外就是CSkin貌似要设置一下Com可见性, 这是导致Webbrowser中的页面无法回调窗体方法的问题所在.

还有就是之前购买过CSkin的源码, 但版本较早, 不知道可否提供升级呢?
6#
乔克斯 发表于 2015-1-19 16:57:33 | 只看该作者
zantesu 发表于 2015-1-19 15:45
已经在这么做了....

另外就是CSkin貌似要设置一下Com可见性, 这是导致Webbrowser中的页面无法回调窗体方 ...

联系QQ:345015918 出示购买的证据。界面库并没有对webbrowser进行干扰操作啊。你说的Com可见性加在哪里?
7#
 楼主| zantesu 发表于 2015-1-20 10:14:26 | 只看该作者
[C#] 纯文本查看 复制代码
namespace WindowsFormsApplication2 {
    [ComVisible(true)]
    public partial class Form1 : CCSkinMain {
        public Form1() {
            InitializeComponent();
            webBrowser1.ObjectForScripting = this;
        }

        public void openQuest(string id) {
            MessageBox.Show("done");
        }
}
}


详细提示:
[C#] 纯文本查看 复制代码
Managed Debugging Assistant 'NonComVisibleBaseClass' has detected a problem in 'D:\Documents\Visual Studio 2013\Projects\WindowsFormsApplication2\WindowsFormsApplication2\bin\Debug\WindowsFormsApplication2.vshost.exe'.

Additional information: A QueryInterface call was made requesting the default IDispatch interface of COM visible managed class 'WindowsFormsApplication2.Form1'. However since this class does not have an explicit default interface and derives from non COM visible class 'CCWin.CCSkinMain', the QueryInterface call will fail. This is done to prevent the non COM visible base class from being constrained by the COM versioning rules.




8#
乔克斯 发表于 2015-1-20 11:43:19 | 只看该作者
zantesu 发表于 2015-1-20 10:14
[mw_shl_code=csharp,true]namespace WindowsFormsApplication2 {
    [ComVisible(true)]
    public part ...

不是说- -加Com可见性可解决web浏览器回调问题么。。怎么引发窗体自己报错了。。。
9#
乔克斯 发表于 2015-1-20 11:44:09 | 只看该作者
zantesu 发表于 2015-1-20 10:14
[mw_shl_code=csharp,true]namespace WindowsFormsApplication2 {
    [ComVisible(true)]
    public part ...

还有,务必把VS背景上的美少女插件交出来!
10#
 楼主| zantesu 发表于 2015-1-20 15:08:05 | 只看该作者
就是说, 我自己虽然声明了COM可见性, 但继承的CCSkinMain没有COM可见性所以就出错了...

那个插件是ClaudiaIDE
https://visualstudiogallery.msdn.microsoft.com/9ba50f8d-f30c-4e33-ab19-bfd9f56eb817
您需要登录后才可以回帖 登录 | 加入CSkin博客

本版积分规则

QQ|申请友链|小黑屋|手机版|Archiver|CSkin ( 粤ICP备13070794号

Powered by Discuz! X3.2  © 2001-2013 Comsenz Inc.  Designed by ARTERY.cn
GMT+8, 2024-4-20 10:47, Processed in 0.564668 second(s), 31 queries , Gzip On.

快速回复 返回顶部 返回列表