繁体   English   中英

将String转换为double类型

[英]Conversion of String to type double

我有一个简单的下拉列表,如下所示,其中包含一些值:

<select id="Opacity">
     <option value="50">50%</option>
     <option value="100">100%</option>
</select>

现在,我使用ajax调用将选定的值传递给我的web方法:

 $("#btnGetFiles").click(function () {
                ClearImages();
                $.ajax({
                    type: "POST",
                    url: "Default.aspx/GetFiles",
                    data: JSON.stringify({imgOpacity: $('#Opacity').val()}),
                    contentType: "application/json; charset=utf-8",
                    dataType: "json",
                    success: function (response) {
                    }
                 });
 });

现在在我的网络方法中,如果我将下拉值选择为“ 50”,则得到的值为“ 50”

我的问题出在这里,我在下面的代码中需要设置不透明度:

Dim imageOpacity As Single = 0.0F
imageOpacity = CInt(imgOpacity)
imageOpacity = imgOpacity / 100
imageOpacity = 1 - imgOpacity

Dim colorMatrixElements As Single()() = {New Single() {1.0F, 0.0F, 0.0F, 0.0F, 0.0F}, 
New Single() {0.0F, 1.0F, 0.0F, 0.0F, 0.0F}, 
New Single() {0.0F, 0.0F, 1.0F, 0.0F, 0.0F}, 
New Single() {0.0F, 0.0F, 0.0F, imageOpacity , 0.0F}, 
New Single() {0.0F, 0.0F, 0.0F, 0.0F, 1.0F}}

Dim wmColorMatrix As New ColorMatrix(colorMatrixElements)

现在,我需要在"imgOpacity"添加“%” 。如果我尝试通过这种方式CInt(imgOpacity +“%”)会抛出一个错误, 指出无法将字符串转换为类型“ Double”

那么我该如何纠正呢?

您为什么不将值除以100? 不是百分之几吗?


我认为这是一个错别字的情况,因为您的变量名非常相似。

看到这个片段

Dim imageOpacity As Single = 1 - Convert.ToSingle(imgOpacity) / 100

在这里,第三和第四条语句的RHS必须从imageOpacity而不是 imgOpacity 将该代码段更改为此。

 Dim imageOpacity As Single = 1 - Convert.ToSingle(imgOpacity) / 100 

然后,请再次将imageOpacity而不是 imgOpacity 分配给矩阵

终于找到答案了。

我将代码更改为此:

 imageOpacity = Single.Parse(imgOpacity)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM