首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

C#,如何以编程方式设置 Excel 单元格样式

前言 C#开发,处理Excel文件是一项常见的任务。...和 VerticalAlignment 属性以编程方式对齐文本,如下所示: worksheet.Range["A1"].HorizontalAlignment = HorizontalAlignment.Center...RichText 控件 GcExcel 支持单元格应用富文本格式。富文本格式允许使用不同的颜色、字体、效果(粗体、下划线、双下划线、删除线、下标、上标)等单元格设置文本样式。...条件格式 工作表,Excel 允许用户对单个或一系列单元格创建条件格式规则,使单元格、行、列或整个工作表的数据自动应用不同的格式。...借助 GcExcel,可以使用工作簿的 Styles 集合以编程方式将这些快速样式应用于单元格或单元格区域,并将其作为值提供给 IRange.Style 属性,如下所示: worksheet.Range

19310

使用流动控制器(Flow Controller )实现 MVVM 协议模型

阅读许多关于软件架构的知识后,我最近 6 个月一直在学习 MVVM 协议模型。为了理解这个协议需要引用 Natasha The Robot 的一篇文章,这篇文章里介绍了关于编程协议的所有知识。...该模型的另一个重要的功能就是它可以负责为 ViewController 实例化并注入 ViewModel + Model。 这有助于依赖注入时代码重用更多。...因此 VC 是独立的、封装完整的,重要的是要方便测试和提高代码的重用性。 这种独立意味着我想要让界面灵活可变的时候可以用这种控制器来实现。...我们可以看到 OwlsFlowController 案例,通过配置选择是否在网格还是列表显示数据,本例是固定的,但它可以有两种测试情况。...本例,只有数据和子单元的变化,可以作为一个参数传递,并为所有列表创建一份可重用的代码。 这里有趣的一点是实现了两种响应协议:一个用于网格和一个列表。但两个的实现是相同的。

94740
您找到你想要的搜索结果了吗?
是的
没有找到

UINavigationController 导航控制器概念属性方法

. navigationBar方式可以调用) NavigationBar管理多个NavigationItem,和NavigationController一样都是用push和pop的方式推进推出各自管理的东西...NavigationItem包含多个UIBarButtonItem NavigationController管理着ToolBar,通过navigationController.toolbar方式调用 控制器管理的东西...(iOS7之后,导航右划会进行pop操作,设置这个的enable可以控制设置手势是否失效) @property(nullable, nonatomic, readonly) UIGestureRecognizer...controller对应的导航项 @property(nonatomic,readonly,strong) UINavigationItem *navigationItem; (2)push的时候隐藏底部栏,push...animated:(BOOL)animated; 这个方法是为了iOS方法的命名统一,导航,其作用和push一样 - (void)showViewController:(UIViewController

2.1K60

【IOS开发基础系列】Storyboard专题

以这种方式,你可以创建超过 5 个的ViewController 给TabBarController,它将自动Tabbar 上显示 More... 按钮。...这将导致增加一个 ViewController 到画布:         当然你也可以直接从 Object Library 拖一个NavigationController,但 Embed In 命令更简单一些...我想将新的场景放在第一个Tab上,可以用拖拽 Tab 的方式改变它们的顺序。         运行程序,现在第一个 Tab 已经变成了NavigationController。         ...与之相仿, NavigationController 所包含的ViewController上,有一个 NavigationItem 对象,可用于设置导航栏。...顶层ViewController 不能再引用应用程序委托。这真是个不幸,我们只能通过代码方式获得引用。

73030

【IOS开发基础系列】Navigation页面导航专题

对于父级VC与子级VC分别有navigationController的情况,即不是使用push方式加载子VC,而是通过AddChildViewController的方式添加的场景,则父级导航条会覆盖子级导航条上面...,所以需要在载入时把父级导航条做隐藏处理: 1.2 navigationItem         含有导航条的ViewController,VC的navigationItem与VC.navigationController...实现,而不是NavigationViewController实现。...否则会导致页面切换时选中状态不准确         TabBar与导航条混用时,TabBarItem的设置是NavigationController,而不是内容Controller,切记!!!...: YES]; [super pushViewController: viewController animated: animated]; 而Tabbar的显示,则只有Pop函数调用前执行才真正起作用

33020

iOS开发UINavigation系列四——导航控制器UINavigationController

528168 二、导航控制器的创建和controller的管理         导航控制器是一个堆栈结构,只是其中管理的对象是controller,通过push与pop进行controller的切换,我们有两种方式可以创建导航控制器...//iOS7之后,导航右划会进行pop操作,设置这个的enable可以控制设置手势是否失效 @property(nullable, nonatomic, readonly) UIGestureRecognizer... *interactivePopGestureRecognizer; 四、iOS8后导航的新特性 //这个方法是为了iOS方法的命名统一,导航,其作用和push一样 - (void)showViewController... *)navigationController willShowViewController:(UIViewController *)viewController animated:(BOOL)animated...controller对应的导航项 @property(nonatomic,readonly,strong) UINavigationItem *navigationItem; //push的时候隐藏底部栏,push

1.8K20

IOS开发之TabBarItem&NavigationBarItem

2.Tab Bar Controller又对应着三个Navigation Controller,点击不同的item会跳转到不同的NavigationController。     ...3.每个Navigation Controller又对应着一些ViewController, 这些ViewController之间我们可以通过按钮控制NavigationController来进行切换...1.登陆页面的的跳转实现     登陆ViewController要跳转到TabBarController需要根据用户输入的信息来实现跳转。...其实在我们storyboard还是蛮简单的,storyboard选择我们要关联的视图控制器, Class中选中我们新建的视图控制器类即可。...接下来会为每个导航控制器配置NavigateBar, 一个NavigationController只有一个NavigationBar, 而在一个NavigationController下的各个ViewController

1.3K80

【iOS开发-22】navigationBar导航栏,navigationItem建立:获取导航栏的基本文本和button以及各种跳跃

(4)最重要的可能是给navigationItem设置左右两边的button,一般默认的左边有“返回”。右边的有“摄像头”(微信朋友圈)。...我们当然也能够利用自己创建的导航条button来覆盖原来导航控制器产生的默认的button,“<Back”。 相同。...须要创建两个视图控制器(ViewController根视图控制器,SecondViewController子视图控制器),然后放在导航控制器栈。...ViewController.m: #import "ViewController.h" #import "SecondViewController.h" @interface ViewController...pushViewController:senCon1 animated:YES]; } @end SecondViewControllor.m: #import "SecondViewController.h

2.2K10

iOS开发之利用Block逆向传值

iOS开发之通过代理逆向传值一文,分析了利用代理模式来逆向传值,其实还有一些其他的方式通知、Block等,相比较代理,我个人认为反而要简单些,但是需要处理好细节问题,Block循环引用。...传值方 1、定义Block用于传值 2、声明一个上述Block属性,这个属性的具体实现需要捕获方传进来 3、需要传值的时候调用Block完成传值 捕获方 1、传递一个Block给传值方 2、...Block捕获传过来的值,并根据需求处理捕获的值 二、Block与逆向传值 还是那句No Code, No BB,案例效果如下: ?...weakself.returnValueBlock) { //将自己的值传出去,完成传值 weakself.returnValueBlock(inputString); } [self.navigationController...*passedValue){ self.nextPassedValue.text = passedValue; }; [self.navigationController

79170

03_iOS导航栏的正确隐藏方式

第一种做法 注意这里一定要用动画的方式隐藏导航栏,这样使用滑动返回手势的时候效果最好,和上面动图一致.这样做有一个缺点就是切换tabBar的时候有一个导航栏向上消失的动画. - (void)viewWillAppear...setNavigationBarHidden:NO animated:animated]; } 第二种做法 设置self为导航控制器的代理,实现代理方法,将要显示控制器设置导航栏隐藏和显示,使用这种方式不仅完美切合滑动返回手势...最后要记得控制器销毁的时候把导航栏的代理设置为nil。...*)navigationController willShowViewController:(UIViewController *)viewController animated:(BOOL)animated...{ // 判断要显示的控制器是否是自己 BOOL isShowHomePage = [viewController isKindOfClass:[self class]];

1.2K20

iOS学习——获取当前最顶层的ViewController

iOS开发过程,我们经常性会需要获取当前页面的ViewController,然后利用ViewController进行一些操作,例如在最顶层的ViewController上展示一个UIAlertController...,或者最顶层的ViewController上present另一个ViewController,或者进行其他操作。...寻找的过程,要分别考虑当前ViewController是UITabBarController和UINavigationController的情况,同时还要考虑到当前ViewController是否通过...获取到的是项目的根视图,结合可能用到UITabBarController或者UINavigationController作为导航结构,以及可能present出新的VC,其实如果用storyboard的方式写...用上面的方法获取到顶层的视图,判断currentVC.navigationController是否为nil。

6.4K50

UI篇-UINavigationController之易忘补充

pushViewController:sec animated:YES ]; push 之后的那个VC可以设置这返回的颜色: [self.navigationController.navigationBar...BaseViewController的ViewDidLoad如下设置即可:注意不用在设置 self.navigationItem.leftBarButtonItem =[[UIBarButtonItem...UINavigationItem属于MVC的M,封装了要显示UiNavigationBar上的数据,定义了UINavigationItem上按钮的触发事件,外观等 -initWithBarButtonSystemItem...navigationItem包含了bar视图的全部元素(title,tileview,backBarButtonItem等),受当前viewcontroller管理,即bar形成整个nv的导航视图,然后每个...自带了一个工具栏,通过设置 self.navigationController.toolbarHidden = NO来显示工具栏,工具栏的内容可以通过viewController的toolbarItems

2.1K20

UITableView reloadData或viewWillAppear失效

今天在做开发的时候,忽然发现在视图的viewWillAppear:方法添加: [self.tableView reloadData]; 不起作用,viewWillAppear:这个方法根本没有调用 后来发现原来用了...UINavigationController后,viewWillAppear方法是没有效果的,要用UINavigationControllerDelegate的– navigationController...所以要做到这个,你必须做以下几步: 设置代理类 nav.delegate = self; 代理类实现UINavigationControllerDelegate Protocol 代理类添加– navigationController...:willShowViewController:animated:方法 : - (void)navigationController:(UINavigationController *)navigationController...willShowViewController:(UIViewController *)viewController animated:(BOOL)animated { [self.myTableView

57330

Xcode:处理故事板的更好方式 享受Interface Builder的提示和技巧

图片来源:Apple AppleXcode 8对Interface Builder进行了很大的改进。...这正是Interface Builder的创建方式。 但对开发人员而言,这可能会导致多个问题。 源代码控制:故事板合并冲突很难解决,因此简单地单独的故事板工作将使您的团队生活更轻松。...有多少次您在错误的ViewController单击一次无意中更改了约束?...1.使用Xcode 7引入的故事板引用 2.代码连接故事板。 你可以阅读更多关于第一种方式在这里。 我将介绍第二种方式,因为它仍然常用于复杂的项目。...代码初始化基于storyboard的viewController时,我经常会看到以下代码: let storyboard = UIStoryboard(name: “Main”, bundle: nil

1.4K30

Cocoa编程中视图控制器与视图类详解

;   提示:UIViewController 有一个属性是navigationController,如果当前ViewController某个NavigationController的堆栈 的话(即是被推送过来的...不过,也可以视具体情况,我们直接在一个独立的视图控制器创建UITabBarController实例对象,自定义一个用于视图 切换的控制器类ViewSwitcherViewController,就可在其中的...实现UITabBarControllerDelegate委托的视图控制器重写init方法来自定义UITabBarItem条目。...编程占据非常重要的位置,因此我们一定要掌握。...控制器加载视图过程 当调用视图控制器的view属性时,视图控制器会先调用loadView方法加载视图,因此,可以loadView方法创建所有的视图,这是比较好的编程惯例。

5K50
领券