Xamarin效果第十二篇之控制祖传PLC

在前面使用DllImport去调用了公司祖传的PLCde832dfb1f05eaaad25aaffa27c5839d.png;坑也被坑了一下,但是总感觉还是基于祖传的Dll木有一点意思;毕竟就是一个数据的监控和开关量的控制;要是直接能用我的屌丝机控制一下就可以好好开(Z)心(B)86bd034e8cc649279f845b4562b66fb2.png;毕竟前面咱也是玩过一点点Xamarin的,那就再次拾起来去玩耍一下吧;来看看最终咱实现的视频效果:

1、在CollectionView中通过绑定后台集合实现了单通道控制

<CollectionView ItemsSource="{Binding CurrentDataContext}"/>

2、CollectionView的ItemTemplate

<CollectionView.ItemTemplate><DataTemplate><StackLayout Orientation="Horizontal"><Label Text="{Binding ChannelID,StringFormat='D0-{0}'}" VerticalTextAlignment="Center" WidthRequest="45"/><Ellipse WidthRequest="20" HeightRequest="20" VerticalOptions="Center"Fill="{Binding OpenStatus,Converter={StaticResource OpenStatusToColorConverter}}"/><Switch OnColor="Gray" ThumbColor="White" HorizontalOptions="EndAndExpand"><Switch.GestureRecognizers><TapGestureRecognizer Command="{Binding Source={RelativeSource AncestorType={x:Type vm:MainViewModel}},Path=SwitchChannelStatusCmd}"CommandParameter="{Binding .}"/></Switch.GestureRecognizers></Switch></StackLayout></DataTemplate>
</CollectionView.ItemTemplate>

3、结果在ItemTemplate中的Switch通过GestureRecognizers绑定后后台Command不起作用,最后通过命令实现

<Switch.Behaviors><behaviorsPack:EventToCommandBehavior EventName="Toggled"Command="{Binding Path=BindingContext.SwitchChannelStatusCmd,Source={x:Reference Name=MyMainPage}}" CommandParameter="{Binding}"/>
</Switch.Behaviors>

4、对于祖传的dll没有文档,只能用最笨的方式去抓包然后记录0665e4e58e807643d5690c64aa5e4323.png,归纳总结:

message = $ ":0010003{nID}00010002B{end}\r\n";

5、然后最简单UDP客户端

IPAddress  iPAddress  = IPAddress.Parse( ip );
IPEndPoint  iPEndPoint  = new IPEndPoint( iPAddress, port );
UdpClient  udpClient  = new UdpClient();
udpClient.Connect( iPEndPoint );
byte[] sendData = Encoding.ASCII.GetBytes( message );
‍

最终简单的效果先这样吧b43082b3de837339c4921480eb35c372.png;以后有时间的话,可以再去摸索一下更复杂的效果4ef7e4fab1d4d41c2c7329c6ec0c5742.png;编程不息、Bug不止、无Bug、无生活b3e81e6271abfbcb0d405e8401138f14.png;改bug的冷静、编码的激情、完成后的喜悦、挖坑的激动 、填坑的兴奋;这也许就是屌丝程序员的乐趣吧;今天就到这里吧;希望自己有动力一步一步坚持下去;生命不息,代码不止;大家抽空可以看看今天分享的效果,有好的意见和想法,可以在留言板随意留言;我看到后会第一时间回复大家,多谢大家的一直默默的关注和支持!如果觉得不错,那就伸出您的小手点个赞并关注一下,多谢您的支持!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/289871.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux之hexdump命令

1、命令解释 hexdump命令看任何文件的十六进制编码&#xff0c;一般看“二进制”文件。 2、参数意思 -n length 只格式化输入文件的前length个字节。 -C 输出规范的十六进制和ASCII码。 -b 单字节八进制显示。 -c 单字节字符显示。 -d 双字节十进制显示。 -o 双字节八进制显示…

CityEngine下如何更好的实现影像与地形叠加

问题&#xff1a;在利用CityEngine导入影像和地形时&#xff0c;会出现影像或地形不显示的问题。 分析&#xff1a;这主要是由影像、地形的尺寸大小和像素深度两个因素导致的。 解决&#xff1a; 1.调整尺寸 首先看一下影像和地形的大小。我们知道CityEngine并不是一个展示平台…

java script创建对象_javascript笔记:深入分析javascript里对象的创建

大家知道在java里面类可以具有静态属性和方法&#xff0c;无需实例化该类的对象&#xff0c;就可以访问这些属性和方法&#xff0c;但是javascript里面是不是只有通过对象初始化方式才会模拟出这样的特点了&#xff1f;其实不然&#xff0c;在编程语言里&#xff0c;类的方法和…

java虚拟机学习-JVM调优总结-新一代的垃圾回收算法(11)

java虚拟机学习-深入理解JVM(1)java虚拟机学习-慢慢琢磨JVM(2)java虚拟机学习-慢慢琢磨JVM(2-1)ClassLoader的工作机制java虚拟机学习-JVM内存管理&#xff1a;深入Java内存区域与OOM(3)java虚拟机学习-JVM内存管理&#xff1a;深入垃圾收集器与内存分配策略(4)java虚拟机学习-…

一分钟了解Android横竖屏 mdpi hdpi xhdpi xxhdpi xxxhdpi

DPI:每英寸像素数 简单的屏幕分辨率计算方法&#xff1a; DisplayMetrics metrics this.getResources().getDisplayMetrics(); float density metrics.density; int dpi metrics.densityDpi; int heightPixels metrics.heightPixels; int widthPixels metrics.widthPixels…

Eclipse在ubuntu平台不显示顶部菜单栏

1、问题 ubuntu上的eclipse用着用着特么就不显示顶部状态栏了 2、解决办法 sudo /etc/profile export UBUNTU_MENUPROXY0 reboot

利用 .NET Core 中的数据保护组件实现限时 Token

前言在业务开发时&#xff0c;我们常常需要生成有过期时间的 Token 凭证。比如重置密码&#xff0c;即使被其他人获取到链接&#xff0c;超过指定时间也无法操作&#xff0c;以保证安全性&#xff1a;常用的实现方式&#xff0c;可以使用缓存或数据库存储 Token 的过期时间。今…

CityEngine Web Scene如何在IIS下部署

CityEngine2012新增了发布Web场景的功能&#xff0c;可以通过本地的Web Scene Viewer打开&#xff0c;也可以发布到ArcGIS Online云端进行共享。如下图&#xff1a; 注&#xff1a;3ws场景包制作方法&#xff1a;选中模型->File->Export->Export Models…->CityE…

瀑布流

<html><head><meta charset"utf-8"><title>瀑布流</title><style type"text/css">#main {position: relative;}.box {padding: 5px;float: left;}.pic {height: auto;padding: 5px;border: 1px solid gray;border-rad…

java简易日历程序报告_简单的日历小程序(java编写)

import java.util.Scanner;public class CalendarDemo{public static void main(String[] args) {int sum 0;Scanner in new Scanner(System.in);System.out.print("请输入年份&#xff1a;");int year in.nextInt();Scanner sc new Scanner(System.in);System.o…

动态规划之石子合并

1、问题 ( 1 )路边玩法 有 n 堆石子堆放在路边,现要将石子有序地合并成一堆,规定每次只能移动相邻的两堆石子合并,合并花费为新合成的一堆石子的数量。求将这 N 堆石子合并成一堆的总花费(最小或最大)。 2、分析 ( 1 )建立最优值递归式 设 Min [i][j] 代表从第 i 堆石子到第 …

《vSphere性能设计:性能密集场景下CPU、内存、存储及网络的最佳设计实践》一1.1.1 确定参数...

本节书摘来华章计算机《vSphere性能设计&#xff1a;性能密集场景下CPU、内存、存储及网络的最佳设计实践》一书中的第1章 &#xff0c;第1.1节&#xff0c;[美] 克里斯托弗库塞克&#xff08;Christopher Kusek&#xff09; 著 吕南德特施皮斯&#xff08;Rynardt Spies&…

CityEngine快捷键一览表

Alt+鼠标左键:旋转 Alt+鼠标中键:平移 Alt+鼠标右键:缩放 鼠标左键:选择

WPF 使用DrawingVisual绘制高性能曲线图

一、前言项目中涉及到了心率监测&#xff0c;而且数据量达到了百万级别&#xff0c;通过WPF实现大数据曲线图时&#xff0c;尝试过最基础的Canvas来实现&#xff0c;但是性能堪忧&#xff0c;而且全部画出来也不实际。同时也尝试过找第三方的开源库&#xff0c;但是因为曲线图涉…

java 代码通用结构_java spring代码通用结构-java

src.main.java.com.company.projectname| - aop&#xff1a;类组。Spring AOP的Aspect仓库&#xff0c;是AOP的相关内容。定义了AOP切面类与织入方法。涉及Aspect&#xff0c;Around&#xff0c;PointCut&#xff0c;validator&#xff0c;SuppressWarnings&#xff0c;Logable…

数据结构(Java)——迭代器和列表的实例

感谢Java软件结构与数据结构 John Lewis Joseph chase 著 金名译 0. 迭代器关键概念&#xff08;补充理解&#xff09; 【1】迭代器是一个对象&#xff0c;它提供了一种依次访问集合中每个元素的方式。 【2】经常把集合定义为Iterable的&#xff0c;说明需要时可以提供一个迭代…

Android studio编译出现Failed to finalize session : INSTALL_FAILED_INVALID_APK

1、问题 我把项目里面的部分java文件导成jar文件&#xff0c;然后复制这个项目然后用Androi studio打开&#xff0c;导入jar编译出现这个错误 Installation failed with message Failed to finalize session : INSTALL_FAILED_INVALID_APK: Split lib_slice_7_apk was define…

Linux的SWAP分区空间不够用的情况下,如何添加SWAP分区

通常情况下&#xff0c;SWAP空间应大于或等于物理内存的大小&#xff0c;最小不应小于64M&#xff0c;通常应是物理内存的2-2.5倍。但根据不同的应用&#xff0c;应有不同的配置。如果是小的桌面系统&#xff0c;则只需要较小的SWAP空间&#xff0c;而大的服务器系统则视情况不…

地理信息科学前沿-[热词]

1. LBS Location Based Service&#xff1a;基于位置的服务&#xff0c;它是通过电信移动运营商的无线电通讯网络&#xff08;如GSM网、CDMA网&#xff09;或外部定位方式(如GPS)获取移动终端用户的位置信息&#xff08;地理坐标&#xff0c;或大地坐标&#xff09;&#xff0c…

《vSphere性能设计:性能密集场景下CPU、内存、存储及网络的最佳设计实践》一1.2.2 内存...

本节书摘来华章计算机《vSphere性能设计&#xff1a;性能密集场景下CPU、内存、存储及网络的最佳设计实践》一书中的第1章 &#xff0c;第1.2.2节&#xff0c;[美] 克里斯托弗库塞克&#xff08;Christopher Kusek&#xff09; 著 吕南德特施皮斯&#xff08;Rynardt Spies&a…